java 泛型类使用,集合中添加不同类型数据
生活随笔
收集整理的這篇文章主要介紹了
java 泛型类使用,集合中添加不同类型数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
添加
?
ArrayList<String> a = new ArrayList<String>(); a.add("CSDN_SEU_Cavin"); Class c = a.getClass(); try{Method method = c.getMethod("add",Object.class);method.invoke(a,100);System.out.println("lgqname:" +a); }catch(Exception e){e.printStackTrace(); }結果
?lgqname:[CSDN_SEU_Cavin, 100]
或者
?
List list = new ArrayList(); list.add("CSDN_SEU_Cavin"); list.add(100);?
泛型類、
public class Generic<T>{?
? ? //key這個成員變量的類型為T,T的類型由外部指定 ?
? ? private T key;
? ? public Generic(T key) { //泛型構造方法形參key的類型也為T,T的類型由外部指定
? ? ? ? this.key = key;
? ? }
? ? public T getKey(){ //泛型方法getKey的返回值類型為T,T的類型由外部指定
? ? ? ? return key;
? ? }
}
傳入的實參
//泛型的類型參數只能是類類型(包括自定義類),不能是簡單類型 //傳入的實參類型需與泛型的類型參數類型相同,即為Integer. Generic<Integer> genericInteger = new Generic<Integer>(123456);//傳入的實參類型需與泛型的類型參數類型相同,即為String. Generic<String> genericString = new Generic<String>("key_vlaue");獲取實參
Log.d("泛型測試","key is " + genericInteger.getKey()); Log.d("泛型測試","key is " + genericString.getKey());?
泛型通配符
public void showKeyValue1(Generic<?> obj){Log.d("泛型測試","key value is " + obj.getKey()); }?
應用1
private void navigate(Class<?> destination) {Intent intent = new Intent(BaseActivity.this, destination);startActivity(intent); }?
總結
以上是生活随笔為你收集整理的java 泛型类使用,集合中添加不同类型数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记忆里的科比
- 下一篇: 杨森翔的书法【斗方】