javaSE学习笔记(三):数组

数组是一种数据结构,是用于存储同一种类型的元素值的集合。通过一个整型下标可以访问数组中的任意元素值。例如,如果a是一个整型数组,a[i]就是数组中下标为i的整数值。

定义数组
java语言支持两种语言来定义数组:
type [] arrayName;//推荐使用
type arrayName [];//不推荐使用
注意:数组是一种引用类型的变量,因此使用它定义一个变量时,仅仅表示定义了一个引用变量,这个引用变量还未指向任何有效的内存,因此定义数组时不能指定数组的元素。

数组的初始化
java语言中数组必须先初始化,然后才可以使用,所谓初始化就是为数组的数组元素分配内存空间,并为每个数组元素赋初始值。
数组的初始化有如下两种方式:

  1. 静态初始化:初始化时由程序员显示指定每个元素的初始值,由系统分配数组长度。
  2. 动态初始化:初始化时程序员只指定数组的长度,由系统为数组元素分配初始值。
    静态初始化的语法格式如下:
    arrayName=new type[]{element1,element2,element3...}
    动态初始化的语法格式如下:
    arrayName = new type[length]

数组遍历示例:
` public static void main(String[] args) {

   String [] str = new String[3];//数组定义和初始化同时进行
   str[0] = "java核心技术";
   str[1] = "Head First java";
   str[2] = "疯狂java讲义";
    for(String book:str) {
       
        System.out.println(book);

    }

}`

数组工具类:Arrays
java提供的Arrays类包含一些static(静态)修饰的方法可以直接操作数组(static修饰的方法可以直接通过类名调用)。
Arrays类位于java API中的java.util包下。
` public static void main(String[] args) {

    int [] a1 = new int[]{1,4,6,7,9,10};
    int [] a2 = new int[]{1,4,6,7,9,10};
    //equals方法判断两个数组是否相等,相等返回true,不相等返回false
    System.out.printf("数组a1和数组a2是否相等:"+ Arrays.equals(a1, a2));
    //copyof方法将原来数组的元素复制到新数组中
    int [] b = Arrays.copyOf(a1,8);
    System.out.println("数组a1和数组b是否相等:"+Arrays.equals(a1,b));
    System.out.println("输出数组b中的元素:"+Arrays.toString(b));
    //将数组b中第6个元素到第8个元素赋值为1
    Arrays.fill(b,6,8,1);
    System.out.println("输出数组b中的元素:"+Arrays.toString(b));
    //对数组b中的元素进行排序
    Arrays.sort(b);
    System.out.println("排序后的数组b的元素为:"+Arrays.toString(b));
}

`

posted @ 2020-10-25 21:06  被风吹的鱼  阅读(101)  评论(0)    收藏  举报