集合与对象数组

学习时间

2020-12-24

学习内容

对象数组

需求:我有3个学生,请把这个3个学生的信息存储到数组中,并遍历数组,获取得到每一个学生信息。
		  学生:Student
			成员变量:name,age
			构造方法:无参,带参
			成员方法:getXxx()/setXxx()

演示:

public class Test {
  public static void main(String[] args) {
    Student s1 = new Student("小张", 15);
    Student s2 = new Student("小李", 18);
    Student s3 = new Student("小王", 20);
    Student[] arr = new Student[3];
    arr[0] = s1;
    arr[1] = s2;
    arr[2] = s3;
    for (int i = 0; i <= arr.length - 1; i++) {
      Student student = (Student) arr[i];
      System.out.println(student.getName() + "\t" + student.getAge());
    }
  }
}

class Student {
  private String name;
  private int age;

  public Student() {
  }

  public Student(String name, int age) {
    this.name = name;
    this.age = age;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public int getAge() {
    return age;
  }

  public void setAge(int num) {
    this.age = age;
  }
}

由来

在同时有多个对象时,用数组存储的时候,增删对象就显得极为不便。所以为了方便对多个对象的操作,Java就提供了集合类。

数组和集合的区别

(1): 长度区别:
	数组的长度是固定的而集合的长度是可变的
(2): 存储数据类型的区别:
	数组可以存储基本数据类型 , 也可以存储引用数据类型; 而集合只能存储引用数据类型
(3): 内容区别:
	数组只能存储同种数据类型的元素 ,集合可以存储不同类型的元素

集合继承体系图
在这里插入图片描述

ArrayList:
		底层数据结构是数组,查询快,增删慢。
		线程不安全,效率高。
Vector:
		底层数据结构是数组,查询快,增删慢。
		线程安全,效率低。
LinkedList:
		底层数据结构是链表,查询慢,增删快。
		线程不安全,效率高。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值