在Java中列出并列出<?>
发布时间:2020-12-14 05:54:39 所属栏目:Java 来源:网络整理
导读:List和List?gt ;?之间有什么区别?我知道我无法在List?中添加任何元素.我有一个代码: ListString myList = new ArrayListString();processList(myList);processListGeneric(myList);public static void processList(List myList) {Iterator it = myList.i
List和List<?> ;?之间有什么区别?我知道我无法在List<?>中添加任何元素.我有一个代码:
List<String> myList = new ArrayList<String>(); processList(myList); processListGeneric(myList); public static void processList(List myList) { Iterator it = myList.iterator(); while(it.hasNext()) System.out.println(it.next()); } public static void processListGeneric(List<?> myList) { Iterator<?> it = myList.iterator(); while(it.hasNext()) System.out.println(it.next()); } 这两个方法的名称不能相同,因为它会导致编译时错误.那么这两种方法有什么不同吗? 解决方法
两者都做同样的事情,但在第二种情况下,编译器被告知您确实需要一个没有类型边界的列表并且不会引发警告.如果您使用的是Java 5或更高版本,则鼓励您使用第二种方法.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |