java去除重复字符串的问题?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java去除重复字符串的问题?相关的知识,希望对你有一定的参考价值。

string a = 1,2,3,4,5,6
string b = 6,3,1
a 和B 中的 1 3 6 重复了 应该用什么办法取出掉呢。
a 和B 中的 1 3 6 重复了 应该用什么办法去掉呢, 只保留2,4,5

参考技术A package text;

import java.util.ArrayList;
import java.util.List;
public class Quchong 
    public static void main(String args[])
        String a="1,2,3,4,5,6";
        String b="1,3,6";
        String result=quChong(a,b);
        System.out.println(result.substring(0,result.lastIndexOf(",")));
    

    private static String quChong(String a, String b) 
        StringBuffer result=new StringBuffer();
        String[] aa=a.split(",");
        String[] bb=b.split(",");
        List aaa=new ArrayList();
        List bbb=new ArrayList();
        for(int i=0;i<aa.length;i++)
            aaa.add(aa[i]);
        
        for(int j=0;j<bb.length;j++)
                bbb.add(bb[j]);
        
        for(int m=0;m<aaa.size();m++)
            if(!bbb.contains(aaa.get(m)))
                String ccc=(String) aaa.get(m);
                result.append(ccc);
                result.append(',');
            
        
        return result.toString();
    

可能比较麻烦,我数据结构没学好,只能想到笨办法,不懂再问!

追问

您好 contains 这个参数是起到一个什么作用呢

追答

contain英文意思 包含,if(!bbb.contains(aaa.get(m)))
String ccc=(String) aaa.get(m);
result.append(ccc);
result.append(',');

意思是bbb中是否包含aaa.get(m)这个东西,如果不包含,说明aaa.get(m)不是a 和 b 的重复字符,保存到result中,最后输出!

本回答被提问者采纳
参考技术B String  a = "1,2,3,4,5,6";
String  b = "6,3,1";
List<String> strs1 = new ArrayList<String>(Arrays.asList(a.split(",")));
List<String> strs2 = new ArrayList<String>(Arrays.asList(b.split(",")));
strs1.removeAll(strs2);
System.out.println(Arrays.toString(strs1.toArray()));

参考技术C 我也是刚学习,我不知道有木有直接的函数可以使用,如果是自己编的话,我会定位a和b,从a读取第一个,然后去读取b,如果b中有停止。a不进行操作,在读取a的下一个,同样在读取b,如有没有则把a中的放到新的字符串c中,当a执行完后,在把c赋值给a,不知道性不行- - 参考技术D String a = "1,2,3,4,5,6";
String b = "6,3,1";
String[] arrayA = a.split(",");
StringBuilder bulider = new StringBuilder();
for(String str : arrayA)
if(b.contains(str))
continue;

bulider.append(str).append(",");

a = bulider.toString().substring(0, bulider.length() - 1);
第5个回答  2013-08-13 是不是将a中出现b的字符去掉呢,

char [ ] c=[]

char [ ] a1=b.toCharArray();
for(int i=0;i<a1.length;i++)
if(b.indexof(a1[i]))
c.putarray(a1[i]);




这样好像可以

无法从字符串中去除空格[重复]

【中文标题】无法从字符串中去除空格[重复]【英文标题】:Can't strip whitespaces from within a string [duplicate] 【发布时间】:2012-04-05 22:46:57 【问题描述】:

可能重复: How do I strip all spaces out of a string in PHP?

应该是这样的:

$text = 'This is the text with 3445';

我希望它是:

$trimmed = 'Thisisthetextwith3445';

【问题讨论】:

请在发帖前搜索或在您写问题时查看类似问题列表。 尝试str_replace(' ','',$text); 或使用正则表达式。 @EvanMulawski 我搜索了,也许有类似的问题,但我没有找到我要找的东西。 PLUS:这个问题太短太直接了。你可以写 (str_replace(' ','',$text);) 代替。 @KhaledMahmoud:谷歌“php 从字符串中删除所有空格”——因为这就是我找到重复项的方式——大约两秒钟。 @KhaledMahmoud 懒惰通常不会在 *** 上得到奖励。无论程度如何。 【参考方案1】:

删除一个或多个空格:

$foo = preg_replace('/\s+/', ' ', $foo);

【讨论】:

【参考方案2】:

你可以这样做:

str_replace(' ', '', $text);

How do I strip all spaces out of a string in PHP? 中所述,您很容易找到。

【讨论】:

也许因为回答一个你知道的事实是重复的问题可以被认为是卖淫。我没有投反对票,但如果我发现这个问题是骗人的,我会删除我的答案并投票结束。 我不介意没有对 dup 投赞成票。我在知道它是一个之前回答了它,然后对其进行了编辑,投票赞成关闭(如您所见),但不会删除我的答案。 Downvotes 是针对不好的答案,如果有人认为我在卖淫,请不要投票。另外,如果您遵循网络礼节,在您投反对票时发表评论也不错。 不,否决票是针对无用的答案。你指出这个问题之前已经被问过并得到了充分的回答。让你自己的答案重复,因此没有用。 这是正确的,无论如何,根据the vote-down page:应该为极端情况保留投票权。我不认为这是一个;-)我只是认为this downvoter 是一个不评论他的downvote 的“愤怒者”。你为他做的,他应该感恩。我会为他做的:谢谢:)【参考方案3】:
$trimmed = str_replace(' ', '', $text);
echo $trimmed;

【讨论】:

以上是关于java去除重复字符串的问题?的主要内容,如果未能解决你的问题,请参考以下文章

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

在java中去除新行和回车[重复]

用Java中的ArrayList实现:去除集合中字符串的重复值(字符串的内容相同)

2019-05-25 Java学习日记之List集合

java第十四天

java-ArrayList中去重复字符串或重复对象LinkedList集合泛型增强for静态导入可变参数asList()方法集合嵌套