Java中如何将两个字符串合并,并且把重复的元素去掉,不能用任何排序指令那些,纯手打写出来。
3个回答
推荐于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;
}
展开全部
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);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实很简单的,用正则一句就够了,没必要写那么多
String a = "aabceesiojkdd";
String b= "khiehkkkhhssdfesee";
String c = (a+b).replaceAll("(.)\\1+", "");
System.out.println(c);//这里c就没有重复的字符了
String a = "aabceesiojkdd";
String b= "khiehkkkhhssdfesee";
String c = (a+b).replaceAll("(.)\\1+", "");
System.out.println(c);//这里c就没有重复的字符了
更多追问追答
追问
我知道用指令直接就可以了,但是我现在不想用,我只想要一个思路而已
追答
你这就是舍近求远,
等等, 我给你写一下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询