Java中泛型数组的使用
2015-09-16 11:39
645 查看
package com.srie.testjava; import java.util.ArrayList; import java.util.List; public class TestClassDefine3<T, S extends T> { public static void main(String[] args) { // 这个会有warning; TestClassDefine3<String, String>[] tcd3 = new TestClassDefine3[12]; TestClassDefine3<Integer, Integer> t1i = new TestClassDefine3<Integer, Integer>(); TestClassDefine3<String, String> t2s = new TestClassDefine3<String, String>(); // tcd3[0] = t1i; // 这个类型不匹配,会有编译错误; tcd3[0] = t2s; // 这个可以添加; List<String> slist = new ArrayList<String>(); slist.add("a"); slist.add("b"); @SuppressWarnings("unchecked") List<String>[] sListArr = new ArrayList[12]; sListArr[0] = slist; // System.out.println(sListArr); for (List<String> list : sListArr) { if (list != null) { for (String string : list) { System.out.println(string); } } } } }
反编译之后的结果:
package com.srie.testjava; import java.io.PrintStream; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class TestClassDefine3<T, S extends T> { public static void main(String[] args) { List[] arrayOfList1; TestClassDefine3[] tcd3 = new TestClassDefine3[12]; TestClassDefine3 t1i = new TestClassDefine3(); TestClassDefine3 t2s = new TestClassDefine3(); tcd3[0] = t2s; List slist = new ArrayList(); slist.add("a"); slist.add("b"); List[] sListArr = new ArrayList[12]; sListArr[0] = slist; int j = (arrayOfList1 = sListArr).length; for (int i = 0; i < j; ++i) { List list = arrayOfList1[i]; if (list != null) for (Iterator localIterator = list.iterator(); localIterator.hasNext(); ) { String string = (String)localIterator.next(); System.out.println(string); } } } }
相关文章推荐
- java io详解
- java基础-ArrayList
- 当eclipse导入工程时报"The builder launch configuration could not be found"错误时的解决方法
- Eclipse调试进入JDK源码
- java 图片上写文字
- java中两个for循环的区别
- Java多线程---main与子线程 start与run
- java socket编程
- java 反编译 行号对齐 decompiler如何去掉行号
- spring aop术语
- Android无法导入下载好的项目(和Eclipse中已经存在的项目命名一样导致冲突)解决办法
- eclipse+Jboss配置远程调试
- Java泛型中的通配符的使用
- Eclipse快捷键
- java设计模式系列--工厂模式
- Google Java编程风格指南
- java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0错误解析
- java.util.vector中的vector的详细用法
- JAVA List 移除元素
- 详解Spring MVC 4常用的那些注解