zoukankan      html  css  js  c++  java
  • Java知识19 数组(比较难掌握)【多测师】

    一、数组是重要的数据结构之一 
    Java中的数组用来存储固定大小的同类型的元素(是同类型的)
    可声明数组变量number[100] 代替声明100个独立变量number0,number1,...number99
    
    二、声明数组变量
    dataType[] arrayRefVar; // 首选的方法 或 dataType arrayRefVar[]; // 效果相同,但不是首选方法
    实例:
    double[] myList; // 首选的方法 
    double myList[]; // 效果相同,但不是首选方法 —--C/C++语言用的多的写法
    
    三、创建数组
    Java用new操作符创建数组 语法如下
    arrayRefVar = new dataType[arraySize];
    解释如上语法:
    1.使用dataType[arraySize]创建了一个数组
    2.把新创建的数组的引用赋值给变量arrayRefVar
    
    重点:数组变量的声明和创建数组可以用一条语句完成
    方式一:dataType[] arrayRefVar = new dataType[arraySize];
    方式二:dataType[] arrayRefVar = {value0, value1, ..., valuek};
    数组的元素是通过索引访问的 数组索引从0开始 索引值从0到arrayRefVar.length-1
    
    实例:
    先声明一个数组变量myList,接着创建一个包含10个double类型元素的数组,并且把他的引用赋值给myList变量
    public class Student {
      public static void main(String[] args) {
       int size = 3;
    
       double[] myList = new double[size];
       myList[0] = 12.4;
       myList[1] = 14.2;
       myList[2] = 19.3;
    
       double total = 0;
       for (int i = 0; i < size; i++) {
        total += myList[i];
       }
       System.out.println(total);
      }
    }
    
    运行结果: 45.900000000000006
    
    四、处理数组
    数组的元素类型和数组的大小都是确定的,所以处理数组一般用基本循环或者foreach循环
    public class Student {
      public static void main(String[] args) {
       double[] arr = { 1.2, 9.1, 9, 5.3 };
    
       for (int i = 0; i < arr.length; i++) {
        System.out.println(arr[i]);
       }
       // 计算所有元素之和
       double total = 0;
       for (int i = 0; i < arr.length; i++) {
        total += arr[i];
       }
       System.out.println("Total is:" + total);
       // 查找最大的元素
       double max = arr[0];
       for (int i = 1; i < arr.length; i++) {
        if (arr[i] > max)
         max = arr[i];
       }
       System.out.println("Max is:" + max);
      }
    
    }
    运行结果:
    1.2
    9.1
    9.0
    5.3
    Total is:24.599999999999998
    Max is:9.1
    
    五、foreach循环 可以在不使用下标的情况下遍历数组
    举列:
    public class TestArray {
        public static void main(String[] args) {
      double[] myList = { 1.9, 2.9, 3.4, 3.5 };
    
      // 打印所有数组元素
      for (double element : myList) {
          System.out.println(element);
      }
        }
    }
    运行结果:
    1.9
    2.9
    3.4
    3.5
    
    六、数组还可以作为函数的参数
    public static void printArray(int[] array)
    printArray(new int[]{3, 1, 2, 6, 4, 2}); —调用函数
    
    七、数组作为函数的返回值
    八、多维数组
    多维数组可以看为是数组的数组,比如二维数组就是一个特殊的一堆数组,其每一个元素都是一个一维数组
    String str[][] = new String[3][4];
    
    九、数组倒叙排序
    public class Test2 {
      public static void main(String[] args) {
       int[] test = { 1, 2, 4, 5, 7 };
       for (int i : test) {
        System.out.print(i + " ");
       }
       System.out.println("
    ");
       test = Test2.reverse(test);
       for (int i : test) {
        System.out.print(i + " ");
       }
      }
    
      public static int[] reverse(int[] arr) {
       int[] result = new int[arr.length];
       for (int i = 0, j = result.length - 1; i < arr.length; i++, j--) {
        result[j] = arr[i];
       }
       return result;
      }
    }
  • 相关阅读:
    (原)Vs中debug和release结果不一致
    (原)mkl用到的函数
    JAVA JDBC 批量操作
    JAVA JDBC 操作blob数据
    JAVA JDBC 利用反射对一个表动态查询
    JAVA JDBC 查询数据
    JAVA JDBC 插入中文时声明utf8编码
    JAVA JDBC prepareStatement 添加数据
    JAVA JDBC 连接数据库
    unzip命令指定编码格式
  • 原文地址:https://www.cnblogs.com/xiaoshubass/p/13110850.html
Copyright © 2011-2022 走看看