您的位置:

java去重,java去重函数

本文目录一览:

java set的去重问题

/**

    您好,提问者:

  怎么可以用Set呢,Map是无重复的,使用Map方便,下面是例子,您看下。

**/

import java.util.HashMap;

import java.util.Map;

public class Demo {

public static void main(String[] args) {

String[] str1 = { "A", "B" };

String[] str2 = { "A", "B" };

String[] str3 = { "A", "C" };

MapString, String[] map = new HashMapString, String[]();

map = setMap("str1",str1,map);

map = setMap("str2",str2,map);

map = setMap("str3",str3,map);

}

public static MapString, String[] setMap(String name, String[] arr,MapString, String[] map){

if(map.size() == 0){

map.put(name, arr);

}else{

for(int i = 0; i  arr.length; i++){

for(String[] str : map.values()){

if(str[i] != arr[i]){

map.put(name, arr);

}

}

}

}

return map;

}

}

JAVA 去掉重复的数据

无非就是检查是否已经有数据的问题,用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);

        }

    }

}

java list如何去重

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中的元素是不重复的,来达到去重的目的

Java中如何去除List中的重复的值

属性是????

先给你一个看看是不是你需要的好了,

                // 利用 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];

}

java如何去掉字符串中重复的字符

lz  你好

这个就是一个比较简单的算法题 , 你可以自己写

但是用Java语言就不需要了 , Java自带泛型相关的类 , 很有用

其中TreeSet集合能自动识别添加的是否重复 , 重复的将不会添加 , 很方便

以下是实现代码:

import java.util.List;

import java.util.Scanner;

public class DeleteRepeated {

private String str;

private TreeSetString noReapted;//带有String类型的TreeSet泛型

        

    public DeleteRepeated() {

     Scanner in = new Scanner(System.in);

    

     System.out.println ("输入一个字符串:");

     str = in.nextLine();

    

     noReapted = new TreeSet();

    }

    

    //清楚重复的数据

    public void removeRepeated(){

     for (int i = 0; i  str.length(); i++){

     noReapted.add(""+str.charAt(i));

     //str.charAt(i)返回的是char型  所以先加一个""空格 , 转换成String型

     //TreeSet泛型能保证重复的不加入 , 而且有序

     }

    

     str = "";

    

     for(String index:noReapted){

     str += index;

     }

    

     //输出

     System.out.println (str);

    }

    

    public static void main(String[] args) {

     DeleteRepeated dr = new DeleteRepeated();

    

     dr.removeRepeated();

    }

}

运行截图:

希望能帮助你哈