题目描述
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入”They are students.”和”aeiou”,则删除之后的第一个字符串变成”Thy r stdnts.
输入描述
每个测试输入包含2个字符串
输出描述
输出删除后的字符串
解题思路:
分别遍历两个字符串,逐个删除
代码如下
import java.util.*;
public class Main {
//删除公共字符
public static List<Character> remove(String ret,String str){
List<Character> list = new ArrayList<>();
char[] ch1 = ret.toCharArray();
char[] ch2 = str.toCharArray();
for(int i = 0;i < ret.length();i++){
list.add(ch1[i]);
}
int q = ret.length();
for(int i = 0;i < ch2.length;i++){
if(list.contains(ch2[i])){
for(int j = 0;j < q;j++){
if(list.get(j) == ch2[i]){
list.remove(j);
q--;
}
}
}
}
return list;
}
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
//String ret = scan.nextLine();
String ret = "They are students";
String str = "aeiou";
//String str = scan.nextLine();
List<Character> list = remove(ret,str);
for(int i = 0;i < list.size();i++){
System.out.print(list.get(i));
}
}
}