泛型集合刪除自定義類物件的方法

2022-09-11 19:00:18 字數 1391 閱讀 5436

在做購物車的時候把商品新增進了泛型集合,做刪除的時候根據id重新從數

據庫查詢商品,從集合刪除時失敗,然後簡單敲了個demo測試,首先定義乙個類

public

class

student

public

void

setname(string name)

public

string getpad()

public

void

setpad(string pad)

}

然後定義泛型集合,new兩個模擬較

listslist=new arraylist();

student s1=new

student();

system.out.println(s1);

student s2=new

student();

system.out.println(s2);

system.out.println(s1.equals(s2));

slist.add(s1);

system.out.println(slist.size());

slist.remove(s2);

system.out.println(slist.size());

輸出結果為

輸出結果為[code=j**a]

dao.models.student@4f1d0d

dao.models.student@1fc4bec

false

11

我們發現兩個物件之間並不相等,所以刪除失敗!網上查詢了一下要 比較物件必須要重寫equals()方法

重寫方法

public

class

student

public

void

setname(string name)

public

string getpad()

public

void

setpad(string pad)

public

boolean

equals(object obj)

else

else

}else

}

} }

這裡判斷確實有些噁心,

重新執行man函式,輸出結果

dao.models.student@4f1d0d

dao.models.student@1fc4bec

true

10

刪除成功

自定義類使用泛型and方法使用泛型

使用泛型的自定義類,泛型可以使用任意的資料型別,在建立物件的時候確定是什麼資料型別,建立物件的時候不使用泛型,那就預設是object型別 格式 package cn.zhuobo.day10.aboutgeneric public class classgeneric public classgen...

自定義泛型方法

不是說方法使用了介面或者類的泛型就叫泛型方法 比如下面的這個collection中的方法就不是泛型方法,而是普通方法 boolean add e e 這個方法是泛型方法 t toarray t a 泛型方法是說這個方法不確定放什麼型別的結構 collection e 介面宣告處用的是e,用e的位置一...

Java集合整理 自定義泛型

泛型是jdk1.5,新新增的特性,其作用是對集合進行 引數化型別 在jdk1.5之前,還沒有泛型這一概念,集合中的元素是object型別,所以,每次使用集合中的元素時,需要將元素向下造型成對應型別才能使用,錯誤的可能性很大,非常的不方便。為了簡化操作,提高效率,便有了泛型這一新特性,有了泛型,集合就...