关于list中如何判断相同值的个数问题的最简单解法 本帖最后由 Alex_20 于 2009-07-22 01:27:39 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.util.*; public class Test2{ public static void main(String [] args) { Integer[] arr={1,1,2,2,3,3,3,4,4}; List<Integer> myList=Arrays.asList(arr); HashSet<Integer> hs=new HashSet<Integer>(myList); for(Integer i:hs){ System.out.println(i+" 在List中存在" + Collections.frequency(myList,i) + "个"); } } }不使用第三方开源组件,5行代码搞定的事情不明白为啥弄的那么复杂,汗!结果如下:F:\java>java Test21 在List中存在2个2 在List中存在2个3 在List中存在3个4 在List中存在2个不知道楼主和代码的结果是什么。 List里没数自己加上就是了。一样的结果,Bag数据结构就是用来处理这个问题的,这个问题是典型的购物车问题,我个人感觉用Bag是语义最清晰的。 2楼的用法我也知道,但是实际使用就会有问题,你每次想知道某个对象在List里到底有多少个都需要做Set转换,这本身就是低效的。 再补充一句你最后的那句查找效率非常的低System.out.println(i+" 在List中存在" + Collections.frequency(myList,i) + "个");这句话要遍历整个List数组,你看下Bag的源代码就知道了。 没事,兄弟。Java的精华都在开源组件里了。 一道简单的面试题,小弟迷惑中,求解 急求解答 java字符串替换问题 在线等 急!!! 做了个相册,但是会同时显示两张大小不同的照片相互覆盖,求助高手 看此段JAVA代码,为什么不完整显示? 急啊 高手来 如何屏蔽键盘事件 大家帮看看这个函数什么功能,很短 How applet use external resource? 如何在html页面中显示具有空格的文件名的图片 Apache 2.0 好像不支持Tomcat,我没看到哪位用 Apache 2.0 连接上 Tomcat 的 求Java读写xml并去除部分字段方法 谨以此献给--被英语浪费掉一部分生命的程序员
public class Test2{
public static void main(String [] args) {
Integer[] arr={1,1,2,2,3,3,3,4,4};
List<Integer> myList=Arrays.asList(arr);
HashSet<Integer> hs=new HashSet<Integer>(myList);
for(Integer i:hs){
System.out.println(i+" 在List中存在" + Collections.frequency(myList,i) + "个");
}
}
}不使用第三方开源组件,5行代码搞定的事情不明白为啥弄的那么复杂,汗!
结果如下:
F:\java>java Test2
1 在List中存在2个
2 在List中存在2个
3 在List中存在3个
4 在List中存在2个不知道楼主和代码的结果是什么。
一样的结果,Bag数据结构就是用来处理这个问题的,这个问题是典型的购物车问题,我个人感觉用Bag是语义最清晰的。
你最后的那句查找效率非常的低
System.out.println(i+" 在List中存在" + Collections.frequency(myList,i) + "个");
这句话要遍历整个List数组,你看下Bag的源代码就知道了。
Java的精华都在开源组件里了。