重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以利用SET里元素不重复的功能实现, 将字符串按照、分割成数组, 然后挨个放入SET中, 最后遍历SET 将里面每个元素组合成一个字符串 。
创新互联公司是一家专注于网站建设、网站设计与策划设计,彭州网站建设哪家好?创新互联公司做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:彭州等地区。彭州做网站价格咨询:18980820575
String s[] = “人、药物、疾病、药物、疾病、人、药物、” 按照、分割。
Set set = new HashSet();
遍历数组s[]
将数组每个元素放入set
遍历结束
定义字符串result=""
遍历set
result = result + "、" + set的该次遍历的元素
遍历结束, 得到结果result
属性是????
先给你一个看看是不是你需要的好了,
// 利用 Set 的特性,将所有项目放入 Set
//中即可移除重复的项目
SetString stringSet = new HashSetString();
for (String element : duplicateArray) {
stringSet.add(element);
}
// Set.size() 为不重复项目的个数
String nonDuplicateArray[] = new String[stringSet.size()];
// 将 Set 中的项目取出放到 nonDuplicateArray 中
Object[] tempArray = stringSet.toArray();
for (int i = 0; i tempArray.length; i++) {
nonDuplicateArray[i] = (String) tempArray[i];
}
Java8开始,对数值,集合等提供了Stream流操作,可以方便的对集合进行操作.
比如 筛选,过滤,去重, 映射, 排序,规约,收集 等操作
简单的参考代码如下
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
// 使用Java8 的Stream特性 和 Java8的Lambda 语句
public class Demo {
public static void main(String[] args) {
// 需求: 集合去重,排序,得到一个新集合里面的元素是之前元素的平方
ListInteger list=Arrays.asList(5,2,2,1,3,4);
ListInteger listResult = list
.stream() // 得到流
.distinct() // 去重 5,2,1,3,4
.sorted() // 自然排序 , 也可以自定义排序规则1,2,3,4,5
.map(x-x*x) // 每个元素求平方1,4,9,16,25
.collect(Collectors.toList()); //收集并返回
System.out.println(listResult);//1,4,9,16,25
}
}
ListString list = new ArrayList();
/*list.add("abc");
list.add("abc");
list.add("def");
list.add("bcd");*/
SetString set = new LinkedHashSet();//这种方式保证去重后的元素相对位置不变
//SetString set = new HashSet();//这种方式去重后元素的位置很有可能变化了
set.addAll(list);
list.clear();
list.addAll(set);
for(String s : list){
System.out.println(s);
}
整个思路就是利用set中的元素是不重复的,来达到去重的目的
无非就是检查是否已经有数据的问题,用List做可能比较简单点
public class SigleList{
ListInteger nums;
public SingleList(){
nums = new ArrayListInteger();
}
public void add(Integer num){
if(!checkNumExist){
nums.add(num);
}
}
public boolean checkNumExist(Integer){
return nums.contains(Integer);
}
}
这个SingleList就简单实现了去重增加,可以用它来读数据
public class Test{
public static void main(String[] args){
SingleList nums = new SingleList();
// 产生100个数据
for(int i = 0; i++; i 100){
// 产生随机数
Integer num = new Random().nextInt(100000);
nums.add(num);
}
foreach(Integer num : nums){
System.out.println(num);
}
}
}