1. 程式人生 > 其它 >java日記2

java日記2

技術標籤:java

集合

用陣列的方式

定義一個數組儲存三個Person物件

		Person [] per =new Person[3];
        Person one =new Person("wang",12);
        Person two =new Person("zhang",32);
        Person three =new Person("cui",42);
        per[0]=one;
        per[1]=two;
        per[2]=three;
        System.
out.println(per[0]); System.out.println(per[1]); System.out.println(per[2]); System.out.println(per[2].getName());

用ArrayList來定義

ArrayList在java.util包下,用import導包,是有序集合,按序儲存

import java.util.ArrayList;

/*
* public boolean add(E e);向集合中新增元素,引數的型別和泛型一致
* public E get(int index);從集合中獲得元素,引數是索引編號,返回值是對應位置的元素
* public E remove(int index);從集合當中刪除元素,引數是索引編號,返回值是被刪除掉的元素
* public int size();獲得集合的尺寸長度,返回值是集合中包含的元素個數
* */
public class Demo02ArrayListMethod { public static void main(String[] args) { ArrayList<String> list =new ArrayList<String>(); //ArrayList<String> list = new ArrayList<>();後來的高版本支援new後面的尖括號內不加元素型別 System.out.println(list);//重寫toString()方法,toString方法是Object類的方法
String a="ads";//堆中的字串常量池 String b=new String("lo");//堆中new一片空間 System.out.println(a+" and "+b); boolean success = list.add("AAA"); System.out.println(list); System.out.println(success); list.add("BBB"); list.add("CCC"); list.add("DDD"); list.add("王"); System.out.println(list); System.out.println("第二號索引位置是:"+list.get(2)); System.out.println("改變前集合的長度:"+list.size()); System.out.println(list.remove(4));; System.out.println(list); System.out.println("改變後集合的長度:"+list.size()); } }

包裝類

特別指出,ArrayList中只能存放引用資料型別,準確說java所有的集合中都只能存放引用資料型別,故寫出

ArrayList<int> list = new ArrayList<>();

是錯誤的寫法,因為int等屬於基本資料型別
但是java有包裝類,所以int型的資料換一種方式去儲存,用Integer類
我們去存Integer類的實現物件即可,內含一個int value,我找到的原始碼中的構造方法

public Integer(int value) {
        this.value = value;
}

我們創造的時候可以使用

Integer i = new Integer(1);

在idea中在這裡插入圖片描述
可以看出方法已被淘汰,還有其他方法,比如praseInt(String string);

裝箱和拆箱

裝箱:把基本型別的資料,包裝到包裝類中(基本型別的資料->包裝類)

構造方法:

	Integer(int value)構造一個新分配的Integer 物件,它表示指定的intInteger(String s)構造一個新分配的Integer物件,它表示String引數所指示的int

傳遞的字串必須是基本型別的字串,否則會丟擲異常,如“100”正確 “abc”錯誤
靜態方法:

	public static Integer valueOf(int i)返回一個表示指定的int值的Integer例項
    public static Integer valueOf(String s)返回儲存指定的String值的Integer物件
拆箱:在包裝類中取出基本型別的資料(包裝類->基本型別的資料)

成員方法:

public int intValue() {
        return value;
}
	int intValue()int型別返回該Integer的值

如果希望向集合中存放基本資料型別,必須使用基本資料型別對應的包裝類

  • 基本型別 包裝類(引用型別,都位於java.lang包下)
		Integer i1 = new Integer(1);
        Integer i2 = Integer.parseInt("123");
        Integer i3 = Integer.valueOf(1);
        Integer i4 = Integer.valueOf("123");
基本資料型別引用資料型別
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean
  • 從JDK1.5開始支援 自動裝箱和自動拆箱
  • 自動裝箱:基本型別—>包裝型別(引用型別)
  • 自動拆箱:包裝型別—>基本型別

大學生心得,新手上路,多多指教。