java有字符串数组arrTemplate,有另外一字符串数组arr,去掉arr当中在arrayTemplate存在的字符串
时间: 2023-09-08 07:04:55 浏览: 125
### 回答1:
Java 代码如下:
```
import java.util.ArrayList;
import java.util.Arrays;
public class RemoveDuplicates {
public static void main(String[] args) {
String[] arrTemplate = {"A", "B", "C", "D"};
String[] arr = {"B", "D", "E", "F"};
ArrayList<String> templateList = new ArrayList<>(Arrays.asList(arrTemplate));
ArrayList<String> arrList = new ArrayList<>(Arrays.asList(arr));
arrList.removeAll(templateList);
System.out.println(arrList);
}
}
```
输出结果:`[E, F]`
### 回答2:
可以通过如下代码实现去掉arr中与arrTemplate存在的字符串:
```java
import java.util.ArrayList;
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
String[] arrTemplate = {"apple", "banana", "orange"};
String[] arr = {"apple", "pear", "grape", "banana"};
ArrayList<String> arrList = new ArrayList<>(Arrays.asList(arr));
arrList.removeAll(Arrays.asList(arrTemplate));
arr = arrList.toArray(new String[arrList.size()]);
System.out.println(Arrays.toString(arr));
}
}
```
首先,将arr转换为ArrayList,这样可以使用ArrayList提供的removeAll()方法。然后,使用Arrays.asList()将arrTemplate转换为List,再使用ArrayList的removeAll()方法将arr中存在于arrTemplate的字符串移除。最后,将ArrayList转换回数组类型。
以上代码的执行结果是:
```
[pear, grape]
```
即arr中被去掉了在arrTemplate存在的字符串"apple"和"banana",只剩下"pear"和"grape"两个字符串。
### 回答3:
代码如下:
```java
import java.util.ArrayList;
import java.util.List;
public class RemoveStrings {
public static void main(String[] args) {
// 定义字符串数组arrTemplate
String[] arrTemplate = {"apple", "banana", "orange", "kiwi"};
// 定义另外一个字符串数组arr
String[] arr = {"orange", "grape", "kiwi", "pear"};
// 创建一个List用于存储不在arrTemplate中的字符串
List<String> resultList = new ArrayList<>();
// 遍历arr数组
for (String str : arr) {
boolean found = false;
// 判断当前字符串str是否在arrTemplate中存在
for (String template : arrTemplate) {
if (template.equals(str)) {
found = true;
break;
}
}
// 如果不在arrTemplate中存在,则加入结果List中
if (!found) {
resultList.add(str);
}
}
// 将结果List转换为字符串数组
String[] resultArr = new String[resultList.size()];
resultArr = resultList.toArray(resultArr);
// 输出结果数组
System.out.println("去掉arr中在arrTemplate存在的字符串后的结果:");
for (String str : resultArr) {
System.out.println(str);
}
}
}
```
以上代码使用List来存储不在arrTemplate中的字符串,然后将List转换为字符串数组作为结果。遍历arr数组,对于每个字符串,判断它是否在arrTemplate中存在,若不存在,则将其加入到结果List中。最后将结果List转换为字符串数组并输出结果。
阅读全文