嗨我有两个字符串
str1="abcd"
str2="apcd"
现在我想删除第二个字符串中的所有常用字符。我怎样才能做到这一点?我用HashSet
试了一下,但是有什么简单的方法吗?请帮帮我。
提前致谢
答案 0 :(得分:1)
StringBuffer sb1 = new StringBuffer("abcd");
StringBuffer sb2 = new StringBuffer("apcd");
for(int i=0;i<sb1.length();i++){
for(int j=0;j<sb2.length();j++){
if(sb1.charAt(i) == sb2.charAt(j)){
sb2.deleteCharAt(j);
}
}
}
System.out.println(sb2);
答案 1 :(得分:0)
使用番石榴的例子:
package org.example;
import com.google.common.base.CharMatcher;
public class CharRemover {
public static void main(final String[] args) {
final String str1 = "abcd";
final String str2 = "apcd";
System.out.println(CharMatcher.anyOf(str1).and(
CharMatcher.anyOf(str2)).removeFrom(str2));
}
}
答案 2 :(得分:0)
如果我的答案错了,请原谅我。 因为我是java的新手。
public class Stack {
static int count=0;
static int index=0;
public static void main(String args[])
{
String str1="abcdg";
String str2="apcdj";
int i=0;
char buffer[]=new char[str1.length()];
for(i=0;i<str1.length();i++)
{
char s=str1.charAt(i);
char s1=str2.charAt(i);
if(s!=s1)
{
int j=i;
j=i-count;
buffer[j]=s1;
}
else
{
count++;
}
}
str2=String.valueOf(buffer);
System.out.println(str2);
}
}