Java数组练习题(敲完这些题直接下一章节)【03】

一、每天练十道题目找找手感

1、判断语句练习题:https://blog.csdn.net/m0_55586329/article/details/122441587

2、循环语句练习题:https://blog.csdn.net/m0_55586329/article/details/122451061

3、判断语句理论知识:https://blog.csdn.net/m0_55586329/article/details/116331989

4、数组理论实践知识(强烈推荐观看):https://blog.csdn.net/m0_55586329/article/details/116840485

Java数组练习题

1、已知数组{1, 3, 6, 7, 2, 5, 9, 0},输出数组的最大数字和最小数字。

public class Demo01 {
    public static void main(String[] args) {
        int[] arrays = {1, 3, 6, 7, 2, 5, 9, 0};
        // 方法一:遍历数组的方式
        // 先定义最大值为第一位先,然后进行比较
        int max = arrays[0];
        int min = arrays[0];
        for (int i = 0; i < arrays.length; i++) {
            if (max < arrays[i]) {
                max = arrays[i];
            }
            if (min > arrays[i]) {
                min = arrays[i];
            }
        }
        System.out.println("最大值Max=" + max + " 最小值Min=" + min);
        // 方法二:使用封装好的方法
        System.out.println("Max=" + Arrays.stream(arrays).max().getAsInt() + "  Min=" + Arrays.stream(arrays).min().getAsInt());
    }
}

2、已知数组{1, 3, 6, 7, 2, 5, 9, 0},如何将数组进行从小到大的排序?最后打印出来。

public class Demo02 {
    public static void main(String[] args) {
        int[] arrays = {1, 3, 6, 7, 2, 5, 9, 0};
        // 方法一:选择排序
        for (int i = 0; i < arrays.length; i++) {
            for (int j = i + 1; j < arrays.length; j++) {
                if (arrays[i] >= arrays[j]) {
                    int temp = arrays[i];
                    arrays[i] = arrays[j];
                    arrays[j] = temp;
                }
            }
        }
        System.out.println("方法一: " + Arrays.toString(arrays));
        // 方法二:简单的一行代码 【注】:会改变数组的,慎用
        Arrays.sort(arrays);
        System.out.println(Arrays.toString(arrays));
    }
}

3、已知数组:{1, 2, 3, 4, 5, 6, 7, 8, 9, 0},编写程序实现猜数字:输入一个数字,输出该数字是否存在于该数组中?

public class Demo03 {
    public static void main(String[] args) {
        int[] arrays = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};
        Scanner scanner = new Scanner(System.in);
        int input = scanner.nextInt();
        for (int i = 0; i < arrays.length; i++) {
            if (arrays[i] == input) {
                System.out.println("true");
            }
        }
    }
}

4、创建一个二维整数数组,3行3列,第一列值1,2,3,第二列3,2,1,第三列0,0,0,循环输出数组每一个元素。

public class Demo04 {
    public static void main(String[] args) {
        int[][] arrays = new int[][]{{1, 2, 3}, {3, 2, 1}, {0, 0, 0}};
        for (int i = 0; i < arrays.length; i++) {
            for (int j = 0; j < arrays[i].length; j++) {
                System.out.print(arrays[i][j] + " ");
            }
        }
    }
}

5、创建一个长度为10的整数数组,使用控制台扫描器给这个数组进行赋值,最后计算所有元素的和、平均值。

public class Demo05 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int[] arrays = new int[10];
        int sum = 0;
        for (int i = 1; i <= arrays.length; i++) {
            System.out.print("请输入第" + i + "个整数:");
            arrays[i - 1] = scanner.nextInt();
            sum += arrays[i - 1];
        }
        System.out.println("元素的和:" + sum + " 平均值:" + sum / arrays.length);
    }
}

6、游戏人物可以穿戴的装备数量为7个,有一个初始人物装备为{null, null, “记忆头盔”, “裁决之杖”, null, “”, “普通草鞋”}, 其中null表示该位置没有穿戴装备。现在要求给游戏人物添加3件装备,装备名字由控制台输入,只能装备在没有穿戴的位置。最后输出所有装。

public class Demo06 {
    public static void main(String[] args) {
        String[] arrays = new String[]{null, null, "记忆头盔", "裁决之杖", null, "", "普通草鞋"};
        Scanner scanner = new Scanner(System.in);
        for (int i = 0; i < arrays.length; i++) {
            if (arrays[i] == null) {
                System.out.print("请武装好装备:");
                arrays[i] = scanner.next();
            }
        }
        System.out.println(Arrays.toString(arrays));
    }
}

7、定义一个整数数组,长度为15,每个元素的值为随机数,最后打印出数组的每一个元素

public class Demo07 {
    public static void main(String[] args) {
        Random random = new Random();
        int[] arrays = new int[15];
        for (int i = 0; i < arrays.length; i++) {
            arrays[i] = random.nextInt();
        }
        System.out.println(Arrays.toString(arrays));
    }
}

8、从控制台输入一个数字表示某个班学生人数,然后创建一个表示该班级所有学生名字的字符串数组,并使用控制台输入学生名字赋值给数组的每一个元素,最后输出所有学生姓名。

public class Demo08 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        System.out.print("请输入班级学生的人数:");
        int num = scanner.nextInt();
        String[] stuArrays = new String[num];
        for (int i = 1; i <= stuArrays.length; i++) {
            System.out.print("请输入" + i + "位学生的名字:");
            stuArrays[i - 1] = scanner.next();
        }
        System.out.println(Arrays.toString(stuArrays));
    }
}

9、定义一个长度为5的数组值为{1,2,3,4,5},另外一个数组值为{10, 20,30, 40,50}, 使用for循环合并拼接成一个新的数组(长度为两个数组长度之和)

public class Demo09 {
    public static void main(String[] args) {
        // 考察对数组性质的理解,数组的长度一旦定义了就不能改变,因此需要新建一个数组
        int[] arrays01 = {1, 2, 3, 4, 5};
        int[] arrays02 = {10, 20, 30, 40, 50};
        int[] newArrays = new int[arrays01.length + arrays02.length];
        for (int i = 0; i < newArrays.length; i++) {
            if (i >= arrays01.length) {
                newArrays[i] = arrays02[i - arrays01.length];
            } else {
                newArrays[i] = arrays01[i];
            }
        }
        System.out.println(Arrays.toString(newArrays));
    }
}

10、定义一个长度为5的字符串数组。循环输入5个姓名。然后再输入一个用户的姓名,检查数组中是否有这个人的姓名,并输出所在下标,然后修改该姓名为一个新的名字,这个名字由控制台输入,最后打印所有姓名。

public class Demo10 {
    public static void main(String[] args) {
        String[] arrays = new String[5];
        Scanner scanner = new Scanner(System.in);
        int index = 0;
        for (int i = 0; i < arrays.length; i++) {
            System.out.print("请输入" + (i + 1) + "位用户的姓名:");
            arrays[i] = scanner.next();
        }
        // 检查数组是否有该姓名
        System.out.print("请输入你要查找的姓名:");
        String name = scanner.next();
        for (int i = 0; i < arrays.length; i++) {
            if (name.equals(arrays[i])) {
                index = i;
                System.out.print("请输入新名字:");
                arrays[i] = scanner.next();
            }
        }
        System.out.println(Arrays.toString(arrays) + "该用户的下标为:" + index);
    }
}

喜欢的朋友可以点个赞支持一下!!!

上一篇:java list 并集


下一篇:牛客java专项练习-day2