韩顺平java05(数组、排序和查找)

数组、排序和查找

数组

三种初始化方式

  1. 动态初始化(1)

  数据类型 [] 数组名=new  数据类型  [大小];

int   [] num    =new   int   [10];

 

可以 使用数组名.length获取数组长度



Scanner sc = new Scanner(System.in);
for (int i = 0; i < weight.length; i++) {
    weight[i] = sc.nextDouble();
}
for (int i = 0; i < 5; i++) {
    System.out.println(weight[i]);
}

 

  1. 动态初始化(2)

  数据类型 [] 数组名;

int    [] nums;
nums = new int[5];
  1. 静态初始化

数据类型 [] 数组名={元素值 , 元素值 , ... };

int[] arrays = {1, 2, 3, 4, 5};

 

  • 注意细节:

韩顺平java05(数组、排序和查找)

 这里主要注意数组元素的类型要一致以及数组下标是否越界

小练习:

1.存贮字母表并打印

//字母表
        double [] alpha = new double[26];
        char a = 'A';
        for (int i = 0; i < alpha.length; i++) {
            alpha[i] =a;
            a++;
            System.out.print((char) alpha[i] + "\t");
        }

老师改进:

double [] alpha = new double[26];
        for (int i = 0; i < alpha.length; i++) {
            alpha[i] ='A' + i;
            System.out.print((char) alpha[i] + "\t");
        }

2.找出数组元素最大值和对应下标

double [] num = {5.6 , 56, 88 , -8 ,3.14, 4678 };
        double max = 0;
        int maxIndex = 0;

        for (int i = 0; i < num.length ; i++){
            if (num[i] > max){
                max = num[i];
                maxIndex = i;

            }
        }
        System.out.println("max:" + max +"index:" + maxIndex);

老师版:

double [] num = {5.6 , 56, 88 , -8 ,3.14, 4678 };
        double max = num[0]; //将第一个元素假定为最大值
        int maxIndex = 0;
        for (int i = 1; i < num.length ; i++){
//然后从第二个元素开始遍历 if (num[i] > max){ max = num[i]; maxIndex = i; } } System.out.println("max:" + max +"index:" + maxIndex);

 

上一篇:写一篇最好懂的HTTPS讲解


下一篇:新冠病毒变异株核酸检测引物设计——代码实现2