论坛首页 Java企业应用论坛

Collection接口的remove和List接口的remove的差别

浏览 6957 次
该帖已经被评为新手帖
作者 正文
   发表时间:2011-02-25   最后修改:2011-06-01

刚看书上一段代码,觉得输出的结果有点奇怪,查看了jdk的api后,恍然大悟。
代码:

Collection<String> con = new ArrayList<String>();
con.add("a");
con.add("b");
con.add("c");
con.remove(0);
System.out.println(con.size());
		
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
list.remove(0);
System.out.println(list.size());


欲知所以然,请查下api。(ps:jdk版本为1.5以上,因为1.5以上才支持泛型和自动装箱)

 

   发表时间:2011-02-26  
3
2
对比才知道呀。呵呵
0 请登录后投票
   发表时间:2011-02-26  
细节决定成败~
0 请登录后投票
   发表时间:2011-02-26  
命名不规范的例证
0 请登录后投票
   发表时间:2011-02-27   最后修改:2011-02-27
你呀肯定不看接口编程的,这是两个不同的重载方法!
	Collection<String> con = new ArrayList<String>();
		con.add("a");
		con.add("b");
		con.add("c");
		con.remove(0);
		System.out.println(con.size());

		List<String> list = new ArrayList<String>();
		list.add("a");
		list.add("b");
		list.add("c");
		list.remove(Integer.valueOf(0));
		System.out.println(list.size());
0 请登录后投票
   发表时间:2011-02-27  
liubey 写道
细节决定成败~


确实是这样。遗憾的是,这样的情况还不是少数。
0 请登录后投票
   发表时间:2011-02-27  
yangyi 写道
命名不规范的例证

非也非也
0 请登录后投票
   发表时间:2011-02-27  
Collection:
remove(Object o)
从此 collection 中移除指定元素的单个实例,如果存在的话(可选操作)。
0 请登录后投票
   发表时间:2011-02-28  
webee 写道
你呀肯定不看接口编程的,这是两个不同的重载方法!
	Collection<String> con = new ArrayList<String>();
		con.add("a");
		con.add("b");
		con.add("c");
		con.remove(0);
		System.out.println(con.size());

		List<String> list = new ArrayList<String>();
		list.add("a");
		list.add("b");
		list.add("c");
		list.remove(Integer.valueOf(0));
		System.out.println(list.size());


这里没涉及到重载。是接口里的方法规定不一样而已。
0 请登录后投票
   发表时间:2011-02-28  
List<String> con = new ArrayList<String>();
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics