对象数组与普通数组 java 0913

对象数组 java 0913

普通数组的定义与使用

public class test2 {
    
    
    public static void main(String[] args) {
    
    
        System.out.println("定义普通的数组并使用");
        int[] numArray = new int[3];
        System.out.println("数组定义好后,里面是可以存放数据的,数组就是有序的容器");
        numArray[0] = 22;
        numArray[1] = 23;
        numArray[2] = 54;
        System.out.println("数组定义完成");
        System.out.println();
        System.out.println("开始遍历数组");
        for (int i = 0; i < numArray.length; i ++) {
    
    
            System.out.println(numArray[i]);
        }
    }
}

效果

定义普通的数组并使用
数组定义好后,里面是可以存放数据的,数组就是有序的容器
数组定义完成

开始遍历数组
22
23
54

什么是对象数组

普通的数组是存放普通数据的容器

  • String[],存放字符串数据
  • int[],存放整数数据

对象数组是用于存放对象数据的

如果我有很多个自定义对象需要保存

可以考虑用对象数组进行有序存储

例子

public class test3 {
    
    
    public static void main(String[] args) {
    
    
        System.out.println("这里有三个学生对象,期望把他们收纳在一个数据中");
        System.out.println("数组的特点就是进行有序收纳,所以可以用数组");
        // 三个学生的实例化,分别为1号学生,2号学生,3号学生
        Student no1 = new Student();
        no1.number = 1;
        Student no2 = new Student();
        no2.number = 2;
        Student no3 = new Student();
        no3.number = 3;

        // 把三个学生收纳到一个数组中
        // 数组的定义,格式如下
        // 类型名[] 数组名 = new 类型名[长度];
        Student[] myStudents = new Student[4];
        System.out.println("定义了一个对象数组,可以保存四个学生对象");
        System.out.println("数组的每一个下标都可以存放一个值,下面开始存值");
        myStudents[0] = no1;
        System.out.println(" 学号为1的学生,分配在了数组的0号位");
        myStudents[1] = no2;
        System.out.println("学号为2的学生,分配在了数组的1号位");
        myStudents[3] = no3;
        System.out.println("学号为3的学生,分配在了数组的3号位");
        System.out.println("数组的2号位,没有数据");

        System.out.println("遍历数组");
        for (int i = 0; i < myStudents.length; i++) {
    
    
//            System.out.println(myStudents[i]);
            // 注意,通过对象数组[下标],取出来的值,就是一个学生对象
            // 即 myStudents[下标]的值是一个学生对象
            // 所以,我们可以通过  学生对象.属性,可以操做学生对象的属性
            if (myStudents[i] != null) {
    
    
                System.out.println("学生学号为"+myStudents[i].number);
            }

        }

    }
}

结果

"C:\Program Files\Java\jdk1.7.0_17\bin\java.exe" "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA Educational Edition 2020.2\lib\idea_rt.jar=5241:D:\Program Files\JetBrains\IntelliJ IDEA Educational Edition 2020.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.7.0_17\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\jfxrt.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0_17\jre\lib\rt.jar;E:\code2020\小功能演练0913\out\production\小功能演练0913" test3
这里有三个学生对象,期望把他们收纳在一个数据中
数组的特点就是进行有序收纳,所以可以用数组
定义了一个对象数组,可以保存四个学生对象
数组的每一个下标都可以存放一个值,下面开始存值
 学号为1的学生,分配在了数组的0号位
学号为2的学生,分配在了数组的1号位
学号为3的学生,分配在了数组的3号位
数组的2号位,没有数据
遍历数组
学生学号为1
学生学号为2
学生学号为3

Process finished with exit code 0

视频

https://www.ixigua.com/6871870761636725256?logTag=8Ne_wehmtb6GcNWDF7B-S

猜你喜欢

转载自blog.csdn.net/ifubing/article/details/108562820
今日推荐