從物件陣列到陣列與集合
阿新 • • 發佈:2018-12-25
物件陣列的概述和使用
A:案例演示 需求:我有5個學生,請把這個5個學生的資訊儲存到陣列中,並遍歷陣列,獲取得到每一個學生資訊。 * Student[] arr = new Student[5];//儲存學生物件 arr[0] = new Student("張三", 23); arr[1] = new Student("李四", 24); arr[2] = new Student("王五", 25); arr[3] = new Student("趙六", 26); arr[4] = new Student("馬哥", 20); for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } * 陣列和集合儲存引用資料型別,存的都是地址值
import bean.Student; public class a { public static void main(String[] args) { //int[] arr = new int[5]; //建立基本資料型別陣列 Student[] arr = new Student[5]; //建立引用資料型別陣列 arr[0] = new Student("張三", 23);//建立一個學生物件,儲存在陣列的第一個位置 arr[1] = new Student("李四", 24);//建立一個學生物件,儲存在陣列的第二個位置 arr[2] = new Student("王五", 25);//建立一個學生物件,儲存在陣列的第三個位置 for(int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } } }
public class Student { private String name; private int age; public Student() { super(); } public Student(String name, int age) { super(); 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 age) { this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } }
集合的由來
* 陣列長度是固定,當新增的元素超過了陣列的長度時需要對陣列重新定義,太麻煩, * java內部給我們提供了集合類,能儲存任意物件,長度是可以改變的,隨著元素的增加而增加,隨著元素的減少而減少
陣列和集合的區別
* 區別1 : * 陣列既可以儲存基本資料型別,又可以儲存引用資料型別,基本資料型別儲存的是值,引用資料型別儲存的是地址值 * 集合只能儲存引用資料型別(物件)集合中也可以儲存基本資料型別,但是在儲存的時候會自動裝箱變成物件 * 區別2: * 陣列長度是固定的,不能自動增長 * 集合的長度的是可變的,可以根據元素的增加而增長
陣列和集合什麼時候用
* 1,如果元素個數是固定的推薦用陣列 * 2,如果元素個數不是固定的推薦用集合