急!!有一个数据集是String[]数组,其中有很多元素的内容是重复的,怎样新建一个数据集只保存其中不重复的记录。谢谢!! 急!!有一个数据集是String[]数组,其中有很多元素的内容是重复的,怎样新建一个数据集只保存其中不重复的记录。谢谢!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 假如不用数组,而用一个java的结果集类比如vector collection arraylist map 等等类是否本身有此功能呢?比如自己带有排序的函数,或者带有取出相同记录中的其中一条的函数呢? 用java map 类就可以的啊 。把你的string[] 一个一个的放到map里取,map.put(String[i],String[i]);放之前要测试一下这个至值是不是已经存在;map.contasins(String[i]); 简洁高效的!String[] arr=(String[]) new HashSet().addAll(Arrays.asList(oldArr)).toArray(new String[0]); treeroot(旗鲁特) 老兄,你那句似乎不通过阿。后面的括号位置可能有问题,我还没找到. Set set=new HashSet();set.addAll(Arrays.asList(oldArr));String[] arr=(String[]) set.toArray(new String[0]); 也可以把数组导入数据库,通过sql语句distinct处理,简单易懂,只不过需要连数据库.呵呵 放到HashSet里不就可以了嘛!当然TreeSet也是可以的。 我想问一下,放在hashset里 来解决 相同内容的记录只取一条的做法,是不是只有对 数字 类型的内容才有用,而对于汉字字符串 就不能了?比如数据集中有多条“北京” 能只取其中一条吗?我试了似乎不行。 这些都是基本的数据结构在java中的应用to wangx1949() 这个你都想的出来?真是佩服 使用TreeSet是绝对不可取的,效率很低(因为TreeSet是排序的),时间复杂度是o(n*logn)使用HashSet的时间复杂度是 o(n)如果有1000条数据的话,TreeSet需要花10倍以上的时间(这只是乐观估计)使用排序的方式可能比TreeSet更慢一些,不过复杂度是一样的(因为java中的sort是快速排序)HashSet使用哈西表(当然对equals和hashCode方法有要求了),字符串当然不会有问题! 可以了,刚才是我不小心写错了一处。我也想问一下set.toArray(new String[0]); set.toArray();到底有什么样的区别? 先把分给了,谢谢treeroot(旗鲁特)老兄.我要发奋学习java基础了.什么框架,什么开源阿,基础不好都是扯淡.开始学基础!!! 为何不看API呢?前者让它返回String[]类型后者返回的是 Object[] 谢谢.我的java基础太差了.从此不敢说会java Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException:2 什么样的注释才是好注释? 关于smtp的问题? 对象的克隆问题 import c:\java\A.class 失败,不知道为什么? 一个比较难的字符串替换。 大神进!如果不是我疏忽,这就是java String equals的bug! 串口开发包JAVAX.COMM的配置问题 关于路径的问题 有个关于字符串替换的问题需要请教一下 一个简单的鼠标事件问题 Applet使用Sun JVM读取本地文件的问题
比如vector collection arraylist map 等等类
是否本身有此功能呢?
比如自己带有排序的函数,或者带有取出相同记录中的其中一条的函数呢?
String[] arr=(String[]) new HashSet().addAll(Arrays.asList(oldArr)).toArray(new String[0]);
你那句似乎不通过阿。后面的括号位置可能有问题,我还没找到.
set.addAll(Arrays.asList(oldArr));
String[] arr=(String[]) set.toArray(new String[0]);
to wangx1949()
这个你都想的出来?真是佩服
使用HashSet的时间复杂度是 o(n)
如果有1000条数据的话,TreeSet需要花10倍以上的时间(这只是乐观估计)
使用排序的方式可能比TreeSet更慢一些,不过复杂度是一样的(因为java中的sort是快速排序)HashSet使用哈西表(当然对equals和hashCode方法有要求了),字符串当然不会有问题!
我也想问一下set.toArray(new String[0]);
set.toArray();
到底有什么样的区别?
前者让它返回String[]类型
后者返回的是 Object[]