1、数组的定义

连续存储的相同类型的数据,用于一个变量管理多个数据。

/**
 * 数组练习
 */
public class Demo01 {
    public static void main(String[] args) {
        //创建一个数组,长度为100,类型是整型int
        int[] arr1 = new int[100];
        //类型为(double)双精度浮点类型,数组长度为50
        double[] arr2 = new double[50];
        //类型为字符串类型数组,数组长度为20,可以存储20个字符串的数组
        String[] arr3 = new String[20];

        arr1[0] = 99;  //给数组的第一个位置的元素赋值
        arr2[0] = 51.2;
        arr3[0] = "SmallG";
        System.out.println(arr1[0] + arr2[0]); //数组中的元素可以进行运算
        //向字符串数组中存放十个字符串
        for (int i=0;i<10;i++){
            arr3[i] = "SmallG"+i;
            System.out.println(arr3[i]);
        }
        //向arr2中存放20个元素
        for (int i = 0;i<20;i++){
            arr2[i]=i+0.3;
            System.out.println(arr2[i]);
        }
    }
}

2、定义数组

数据类型[] 数组名 = new 数据类型[数组长度];

在定义数组的时候,数据类型前后保持一致,使用过程中数据类型保持不变。数组中的各个数据称为元素

3、数组元素的默认值

在数组定义完成后,其中每个元素自动完成初始化为默认值。

默认值为:

int-----------0

double--------0.0

string--------null

boolean-------false

char----------空字符

练习:

/**
 * 数组默认值练习
 */
public class Demo02 {
    public static void main(String[] args) {
        int[] arr1 = new int[100];
        System.out.println(arr1[0]); //0

        double[] arr2 = new double[100];
        System.out.println(arr2[0]); //0.0

        String[] s = new String[20];
        System.out.println(s[0]);    //null

        char []arr3 = new char[10];
        System.out.println(arr3[0]);
    }
}

4、数组的遍历

/**
 * 数组的遍历
 */
public class Demo03 {
    public static void main(String[] args) {
        int[] arr = new int[100];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = i;
            System.out.println(arr[i]);
        }
    }
}

5、静态初始化数组

/**
 * 静态初始化数组
 */
public class Demo04 {
    public static void main(String[] args) {
        //动态初始化数组的缺点,太麻烦
        //静态初始化数组,直接数组初始化并赋值
        int[] arr1 = {1, 2, 3, 4, 5};
        for (int i = 0; i < arr1.length; i++) {
            System.out.println(arr1[i]);
        }
    }
}

6、ArrayList 集合

基于数组实现的线性表集合,在创建的时候不用分配空间,自动扩展存储空间,底层使用数组的实现。相比数组更方便,可以对里面的数据进行更改。

使用步骤:

  • 导入API组件:采用import java.util.ArrayList;
  • 创建API组件:ArrayList list = new Arraylist<>();
  • 使用API组件:list.add("Smallg");
/**
 * ArrayList集合
 * ArrayList是一个有序集合
 */
public class Demo05 {
    public static void main(String[] args) {
        //创建组件
        ArrayList<String> names = new ArrayList();

        //存入数据
        names.add("SmallG0");
        names.add("SmallG1");
        names.add("SmallG2");
        names.add("SmallG3");
        names.add("SmallG4");
        
        //打乱集合中的顺序
        Collections.shuffle(names);
        //取出数据
        for (int i = 0; i < names.size(); i++) {
            System.out.println(names.get(i));
        }
    }
}

(1)交换ArrayList集合中的两个数据

/**
 * 交换ArrayList集合中的两个数据
 */
public class Demo06 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("SmallG01");//0
        list.add("SmallG02");//1
        list.add("SmallG03");//2
        list.add("SmallG04");//3
        list.add("SmallG05");//4
        System.out.println(list);
        //交换2和4的位置
        String t = list.set(2,list.get(4));
        list.set(4,t);
        System.out.println(list);
        //嵌套处理:执行步骤,1、list.get(1),2、list.set(3,list.get(1)),3....
        list.set(1,list.set(3,list.get(1)));
        System.out.println(list);
    }
}
最后修改:2023 年 07 月 19 日
如果觉得我的文章对你有用,请随意赞赏