java代码去除重复字 Java去除数组中重复的字符

java怎么去除两个字符串中相同的字符

set 本身就可以去除相同的元素 ! 没有必要用list

创新新互联,凭借10余年的做网站、成都网站制作经验,本着真心·诚心服务的企业理念服务于成都中小企业设计网站有上千案例。做网站建设,选创新互联建站

import java.util.*;

public class Test {

public static void main(String[] args){

String str="This is a String";

String sbr="isaring";

Set set = new HashSet();

for(char c:str.toCharArray())

{

set.add(c);

}

for(char c:sbr.toCharArray())

{

set.add(c);

}

System.out.println(set);

}

}

[g, T,  , t, s, r, S, a, n, h, i]

你的代码里面:list.add(sbr.substring(j,j+1));

我觉得应该是list.add(sbr.charAt(j));//把相同的加进来,然后再去除这些相同的就是不同的了

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();

}

}

运行截图:

希望能帮助你哈

JAVA字符串中去重复字符串

import java.util.ArrayList;

import java.util.List;

public class $ {

public static void main(String[] args) {

String str = "教练教练裁判裁判裁判运动员运动员";

ListString data = new ArrayListString();

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

String s = str.substring(i, i + 1);

if (!data.contains(s)) {

data.add(s);

}

}

String result = "";

for (String s : data) {

result += s;

}

System.out.println(result);

}

}

教练裁判运动员

Java字符串去掉重复字符

package problem;

public class Nonrepeat {

public static String delRepeat(String str) {

char[] arr = str.toCharArray();

StringBuffer target = new StringBuffer();

boolean blDigit = false;

char nextChar = 0;

for (char c : arr) {

if (isDigit(c)) {

target.append(c);

blDigit = true;

} else if (!blDigit) {

target.append(c);

} else if (nextChar == 0 blDigit) {

target.append(c);

nextChar = c;

} else if (blDigit c != nextChar) {

target.append(c);

blDigit = false;

nextChar = 0;

} else if (blDigit c == nextChar) {

blDigit = false;

nextChar = 0;

}

}

return target.toString();

}

private static boolean isDigit(char c) {

if (c '0' c '9')

return true;

return false;

}

public static void main(String[] args) {

String s = "ss2ss15ddddsdf";

System.out.println(delRepeat(s));

}

}

求: 用 Java 正则去掉字符串中重复出现的字符!

举例:

1、String str = "abcdeabcdeabcdeaaaaaadddddceeeeabcccccccacadaeec";

str = str.replaceAll(reg, "");

System.out.println(str);

2、str = str.replaceAll("(?s)(.)(?=.*\\1)", "");

(?s)(.)(?=.*\1)

3、(?s) 开启单行模式 DOTALL 让. 号匹配任意字符

(.) 任意字符 并捕获在第一组

(?=.*\1) 这是断言, 表示后面内容将是 任意个字符加上第一组所捕获的内容

这样,如果这整个式子匹配到,表示,第一个捕获组内容在字符串中,至少出现两次,替换为 "" 空串.

进行 全局替换后, 整个字符串所出现的字符将不重复。

另外:

正则表达式默认是从左向右匹配, java中似乎没有逆向匹配的选项

所以你可以先反转字符串, 然后replace, 然后再反转

如下

急求!!!!用java 写一个 字符串去重 的程序!

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

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

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

MapString,Boolean sm=new HashMapString,Boolean();

ListString l=new ArrayListString();

for(String s:ss){

if(!sm.containsKey(s)){

l.add(s);

sm.put(s,true);

}

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

}


网站标题:java代码去除重复字 Java去除数组中重复的字符
本文URL:http://scjbc.cn/article/higgch.html

其他资讯