对象数组与普通数组 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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鲸鱼编程pyhui

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值