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

java如何去掉字符串中重复的字符,第1张

lz  你好

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

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

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

以下是实现代码:

import java.util.List

import java.util.Scanner

public class DeleteRepeated {

private String str

private TreeSet<String> 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()

    }

}

运行截图:

希望能帮助你哈

  import java.util.*

  class This {

public static void main(String[] args) {

String a="06-104,07-104,06-104,07-104,03-103,04-103,03-103,04-103,05-102,"

a = a.replaceAll("^,*|,*$",",")

String reg = "(,[^,]+,).*\\1+"

while(a.matches("^.*" + reg + ".*$")){

    a = a.replaceAll(reg,"$1")

}

a = a.replaceAll("^,+|,+$","")

System.out.println(a)

}

}

先通过标点符号分词,然后去掉重复的词语。

String str=“人、药物、疾病、药物、疾病、人、药物、”

String[] ss=str.split("、")

Map<String,Boolean>sm=new HashMap<String,Boolean>()

List<String>l=new ArrayList<String>()

for(String s:ss){

if(!sm.containsKey(s)){

l.add(s)

sm.put(s,true)

}

最后l就是你去掉重复的词组之后所得的文本。组合起来就行了。

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10060196.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存