【发布时间】:2020-04-18 13:12:19
【问题描述】:
我有两个字符串数组:
arr1 = {"i", "b", "v", "d", "y", "z", "u", "a"}
arr2 = {"i", "b", "v", "y", "u", "z", "a"}
我想从“arr1”和“arr2”创建一个新数组“arr3”。诀窍是,如果 arr2 中缺少元素,那么我想保留一个空元素,并且在 arr2 中保持相同的元素顺序。
在我的例子中:
- arr2 中缺少元素 'd',因此它将 arr3[i] = ""
- 与“arr1”相比,元素“u”和“z”是相反的,但这并不重要,因为我想保持“arr2”的顺序
这是我的代码:
public static void main(String[] args){
String[] arr1 = {"q", "b", "v", "d", "y", "z", "u", "a"};
String[] arr2 = {"q", "b", "v", "y", "u", "z", "a"};
String[] arr3 = new String[arr1.length];
for(int i = 0;i<arr1.length ; i++) {
if(getIndex(arr1[i], arr2) == -1)
arr3[i] = "";
else
if (i < arr2.length)
arr3[i] = arr2[i];
}
}
public static int getIndex(String element, String[] array) {
for(int i=0;i<array.length;i++) {
if(array[i].contentEquals(element))
return i;
}
return -1;
}
上面代码的输出是:
arr3 = {"q", "b", "v", "", "u", "z", "a"}
arr2 中缺少元素“y”。
【问题讨论】:
标签: java arrays comparison string-length