Java中如何将两个字符串合并,并且把重复的元素去掉,不能用任何排序指令那些,纯手打写出来。

 我来答
匿名用户
推荐于2017-12-15
展开全部
package test;
public class StringHeBing {
 public static String merge(String str1,String str2){
  int len = str2.length();
  for (int i = 0; i < len; i++) {
   char c = str2.charAt(i);
   if (str1.indexOf(c) == -1) {
    str1 = str1.concat(c+"");
   }
  }
  System.err.println(str1);
  return str1;
 }
 public static void main(String[] args) {
  String str1 = "上海金融大厦";
  String str2 = "上港集团";
  merge(str1, str2);
 }
}

 上面的做法只把加加进来的字符串去重,而未把原来的字符串去重复,下面做了个新的

public static String merge1(String str1,String str2){
        String add = str1.concat(str2);
        String result= add.charAt(0)+"";
        for (int i = 1; i < add.length(); i++){
            char c = add.charAt(i);
               if (result.indexOf(c) == -1) {
                   result = result.concat(c+"");
               }
        }
        return result;
    }
miaoch
2016-09-28 · TA获得超过1204个赞
知道小有建树答主
回答量:814
采纳率:83%
帮助的人:331万
展开全部
public class test1 {
public static void main(String args[]) {
String str1 = "abdasidan";
String str2 = "absdaddsa";
String str = str1 + str2;//合并
System.out.println(str);
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
for (int j = i+1;j<str.length();j++) {
char cc = str.charAt(j);
if (c == cc) {
str = str.substring(0, j) + str.substring(j + 1);
j--;
}
}
}
System.out.println(str);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
代作网I站
2016-09-28 · 超过20用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:19.7万
展开全部
其实很简单的,用正则一句就够了,没必要写那么多
String a = "aabceesiojkdd";
String b= "khiehkkkhhssdfesee";

String c = (a+b).replaceAll("(.)\\1+", "");
System.out.println(c);//这里c就没有重复的字符了
更多追问追答
追问
我知道用指令直接就可以了,但是我现在不想用,我只想要一个思路而已
追答
你这就是舍近求远,
等等, 我给你写一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式