本人初学JAVA,答案均为本人原创。如有错误请各位指正
- 数组查找操作:定义一个长度为10 的一维字符串数组,在每一个元素存放一个单词;然后运行时从命令行输入一个单词,程序判断数组是否包含有这个单词,包含这个单词就打印出“Yes”,不包含就打印出“No”。
public class Pratice1 {
public static void main(String[] args) {
String[] word = {"apple","people","man","woman","child","girl","boy","sister","borther","run"};
//获取控制台输出语句
Scanner input = new Scanner(System.in);
System.out.println("请输入一个单词:");
String str = input.next();
//循环查找10次
int count = 0;
for(String temp:word) {
count++;
if(temp.equals(str)) {
System.out.println("YES");
break;
}else if(count>=10){
System.out.println("No");
}
}
}
- 获取数组最大值和最小值操作:利用Java的Math类的random()方法,编写函数得到0到n之间的随机数,n是参数。并找出产生50个这样的随机数中最大的、最小的数,并统计其中>=60的有多少个。
提示:使用 int num=(int)(n*Math.random());获取随机数。
public class Pratice2 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入最大随机数(从0开始):)");
int n = s.nextInt();
int[] num = new int[50-1];
int max = num[0];
int min = num[0];
int count=0;
for(int i=0;i<num.length;i++) {
num[i] = (int)((n+1)*Math.random()); //获得50个随机数
if(num[i]>=60) {
count++; //计算》=60的数有多少个
}
if(max<num[i]) {
max = num[i]; //找最大值
}
if(min>num[i]) {
min = num[i]; //找最小值
}
}
System.out.println("0-"+n+"之间的最大随机数为:"+max);
System.out.println("0-"+n+"之间的最小随机数为:"+min);
System.out.println("0-"+n+"之间的随机数>=60的有"+count+"个");
}
}
- 数组逆序操作:定义长度为10的数组,将数组元素对调,并输出对调前后的结果。
思路:把0索引和arr.length-1的元素交换,把1索引和arr.length-2的元素交换……
只要交换到arr.length/2的时候即可。
public class Pratice3 {
public static void main(String[] args) {
int[] a = {10,20,30,40,50,60,70,80,90,100};
int[] b = new int[10];
System.arraycopy(a, 9, b, 0, 1);
System.arraycopy(a, 8, b, 1, 1);
System.arraycopy(a, 7, b, 2, 1);
System.arraycopy(a, 6, b, 3, 1);
System.arraycopy(a, 5, b, 4, 1);
System.arraycopy(a, 4, b, 5, 1);
System.arraycopy(a, 3, b, 6, 1);
System.arraycopy(a, 2, b, 7, 1);
System.arraycopy(a, 1, b, 8, 1);
System.arraycopy(a, 0, b, 9, 1);
System.out.println(Arrays.toString(a));
System.out.println(Arrays.toString(b));
}
}