在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
对于Java的学习者来讲,学习Java基础语法打好基础是至关重要的一步。但是如果只是一味的看视频或者看书灌输理论知识,是很难真正掌握Java的基础知识的。那么 ,我们除了了解学习理论,还需要尝试做一些相应的练习题,这样才能巩固所学知识,做到活学活用。本文为大家整理了Java基础练习案例,并附上了答案,大家可以试着做一做。

1、数组元素求和
(1)案例需求
有这样的一个数组,元素是{68,27,95,88,171,996,51,210}。求出该数组中满足要求的元素和,要求是:求和的元素个位和十位都不能是7,并且只能是偶数。
(2)代码实现
```java
/*
思路:
定义一个数组,用静态初始化完成数组元素的初始化;
定义一个求和变量,初始值是0;
遍历数组,获取到数组中的每一个元素;
判断该元素是否满足条件,如果满足条件就累加;
输出求和变量的值。
*/
public class Test06 {
public static void main(String[] args) {
//定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {68, 27, 95, 88, 171, 996, 51, 210};
//定义一个求和变量,初始值是0
int sum = 0;
//遍历数组,获取到数组中的每一个元素
for(int x=0; x<arr.length; x++) {
//判断该元素是否满足条件,如果满足条件就累加
if(arr[x]%10!=7 && arr[x]/10%10!=7 && arr[x]%2==0) {
sum += arr[x];
}
}
//输出求和变量的值
System.out.println("sum:" + sum);
}
}
```
2、判断两个数组是否相同
(1)案例需求
定义一个方法,用于比较两个数组的内容是否相同。
(2)代码实现
```java
/*
思路:
定义两个数组,分别使用静态初始化完成数组元素的初始化
定义一个方法,用于比较两个数组的内容是否相同
比较两个数组的内容是否相同,按照下面的步骤实现就可以了。首先比较数组长度,如果长度不相同,数组内容肯定不相同,返回false。其次遍历,比较两个数组中的每一个元素,只要有元素不相同,返回false。最后循环遍历结束后,返回true
调用方法,用变量接收
输出结果
*/
public class Test07 {
public static void main(String[] args) {
//定义两个数组,分别使用静态初始化完成数组元素的初始化
int[] arr = {11, 22, 33, 44, 55};
//int[] arr2 = {11, 22, 33, 44, 55};
int[] arr2 = {11, 22, 33, 44, 5};
//调用方法,用变量接收
boolean flag = compare(arr,arr2);
//输出结果
System.out.println(flag);
}
//定义一个方法,用于比较两个数组的内容是否相同
/*
两个明确:
返回值类型:boolean
参数:int[] arr, int[] arr2
*/
public static boolean compare(int[] arr, int[] arr2) {
//首先比较数组长度,如果长度不相同,数组内容肯定不相同,返回false
if(arr.length != arr2.length) {
return false;
}
//其次遍历,比较两个数组中的每一个元素,只要有元素不相同,返回false
for(int x=0; x<arr.length; x++) {
if(arr[x] != arr2[x]) {
return false;
}
}
//最后循环遍历结束后,返回true
return true;
}
}
```
3、查找元素在数组中出现的索引位置
(1)案例需求
已知一个数组 arr = {19, 28, 37, 46, 50}; 键盘录入一个数据,查找该数据在数组中的索引。并在控制台输出找到的索引值。如果没有查找到,则输出-1。
(2)代码实现
```java
/*
思路:
定义一个数组,用静态初始化完成数组元素的初始化;
键盘录入要查找的数据,用一个变量接收;
定义一个索引变量,初始值为-1;
遍历数组,获取到数组中的每一个元素;
拿键盘录入的数据和数组中的每一个元素进行比较,如果值相同,就把该值对应的索引赋值给索引变量,并结束循环;
输出索引变量。
*/
public class Test08 {
public static void main(String[] args) {
//定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {19, 28, 37, 46, 50};
//键盘录入要查找的数据,用一个变量接收
Scanner sc = new Scanner(System.in);
System.out.println("请输入要查找的数据:");
int number = sc.nextInt();
//调用方法
int index = getIndex(arr, number);
//输出索引变量
System.out.println("index: " + index);
}
//查找指定的数据在数组中的索引
/*
两个明确:
返回值类型:int
参数:int[] arr, int number
*/
public static int getIndex(int[] arr, int number) {
//定义一个索引变量,初始值为-1
int index = -1;
//遍历数组,获取到数组中的每一个元素
for(int x=0; x<arr.length; x++) {
//拿键盘录入的数据和数组中的每一个元素进行比较,如果值相同,就把该值对应的索引赋值给索引变量,并结束循环
if(arr[x] == number) {
index = x;
break;
}
}
//返回索引
return index;
}
}
```
4、数组元素反转
(1)案例需求
已知一个数组 arr = {19, 28, 37, 46, 50}; 用程序实现把数组中的元素值交换,交换后的数组 arr = {50, 46, 37, 28, 19}; 并在控制台输出交换后的数组元素。
(2)代码实现
```java
/*
思路:
定义一个数组,用静态初始化完成数组元素的初始化;
循环遍历数组,这一次初始化语句定义两个索引变量,判断条件是开始索引小于等于结束索引;
变量交换;
遍历数组。
*/
public class Test09 {
public static void main(String[] args) {
//定义一个数组,用静态初始化完成数组元素的初始化
int[] arr = {19, 28, 37, 46, 50};
//调用反转的方法
reverse(arr);
//遍历数组
printArray(arr);
}
/*
两个明确:
返回值类型:void
参数:int[] arr
*/
public static void reverse(int[] arr) {
//循环遍历数组,这一次初始化语句定义两个索引变量,判断条件是开始索引小于等于结束索引
for (int start = 0, end = arr.length - 1; start <= end; start++, end--) {
//变量交换
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}
}
/*
两个明确:
返回值类型:void
参数:int[] arr
*/
public static void printArray(int[] arr) {
System.out.print("[");
for (int x = 0; x < arr.length; x++) {
if (x == arr.length - 1) {
System.out.print(arr[x]);
} else {
System.out.print(arr[x] + ", ");
}
}
System.out.println("]");
}
}
```
以上就是Java基础练习案例整理,大家都会做了吗?需要注意的是,在一开始做的时候不要看答案,做完之后,再对一遍答案。这样才能更好地知道自己哪里有问题,从而有针对性的去解决。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
零基础线上学Java培训机构哪家好?
零基础线上学Java培训机构哪家好?对于职场人士转型学IT更需要慎重选择,如果选择判断失误,不仅耽误自己的宝贵时间还会打击自己转型的信心。选择博学谷线上Java培训机构,通过业余时间学习,不脱产不辞职线上视频就可以学习,学习过程中贯穿Java开发项目实战项目。
9179
2019-05-05 15:04:28
学Java有什么用?
学Java有什么用?这是所有对Java感兴趣的人都会产生的疑问。我们身处的时代说白了就是互联网的时代,互联网离不开Java语言,那么我们的生活也就和Java也息息相关。Java的应用范围十分广,按照不同的用途,在以下方面应用广泛:
7731
2019-06-25 18:53:40
零基础学习Java很难吗?主要难点在哪里?
相对于大部分传统职业来讲,互联网要更加开放,绝大部分技术岗位都可以通过学习或者培训获得入行的门槛。Java开发在互联网技术岗位招聘中所占的市场份额是有目共睹的。每年都有很多专业的高校毕业生进入Java开发领域,但依旧无法达到市场招聘的需求。因此大量零基础的同学也选择通过学习和培训进入Java开发这个高薪岗位。那零基础学习Java难吗?主要难点在哪里呢?
6939
2019-10-31 18:40:13
Java基础语法之if语句学习笔记
众所周知,流程控制语句可以分为三类,分别是顺序结构、分支结构和循环结构,而分支结构又可以分为if语句和switch语句。顺序结构可以说是程序中最简单最基本的流程控制,这里就不展开详细讲解了。本文重点要讲解分析的是分支结构的if语句,内容包括了if语句的格式、执行流程和具体示例。想要学习Java基础语法的小伙伴,可以看看下面整理的if语句的笔记,希望对大家入门Java能够有所帮助。
8127
2019-12-06 12:40:32
什么是Java运算?Java运算:比九九乘法表还简单
提到运算,你可能会立即想到加、减、乘、除四则运算以及“九九乘法表”。Java 语言中有很多进行数据运算的方式,比如:算术运算、比较运算、逻辑运算、赋值运算、三目运算等。每一种运算方式,又都包含了很多的运算符,小编把这些运算符形象的称为“十八般武艺”,学习 Java 中的运算,就是学习这些运算符的使用,也就是修炼这“十八般武艺”的过程。
5562
2021-07-15 15:16:23
