java对比两个String[]并找出相同的值
时间: 2023-12-19 09:06:38 浏览: 25
你可以使用两个for循环嵌套来比较两个String数组中的值,找出相同的值。具体实现如下:
```java
String[] array1 = {"apple", "banana", "orange", "pear"};
String[] array2 = {"banana", "kiwi", "orange", "grape"};
for (int i = 0; i < array1.length; i++) {
for (int j = 0; j < array2.length; j++) {
if (array1[i].equals(array2[j])) {
System.out.println("The common element is: " + array1[i]);
}
}
}
```
在这个例子中,我们比较了两个String数组array1和array2,找出了它们共有的元素,即"banana"和"orange"。在比较的过程中,我们使用了equals()方法来比较两个String对象的值,因为在Java中,使用==比较两个String对象时,比较的是它们在内存中的地址,而不是它们的值。
相关问题
java比较两个list并找出不同项
要比较两个List并找出不同项,可以按以下步骤进行:
1. 首先将两个List进行排序,以便进行比较。
2. 然后使用一个for循环遍历第一个List,逐个比较每个元素是否在第二个List中存在。
3. 如果第一个List中的元素在第二个List中不存在,则说明这个元素是不同的,将其添加到一个新的List中,作为不同项。
4. 最后返回这个新的List,其中包含两个List中的不同项。
下面是一个Java代码示例:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class CompareLists {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(3);
list1.add(4);
List<Integer> list2 = new ArrayList<>();
list2.add(2);
list2.add(4);
list2.add(6);
list2.add(8);
Collections.sort(list1);
Collections.sort(list2);
List<Integer> different = new ArrayList<>();
for (Integer i : list1) {
if (!list2.contains(i)) {
different.add(i);
}
}
System.out.println("Different items: " + different);
}
}
```
这个示例程序比较了两个List,找出它们之间的不同项,并将结果输出到控制台。在这个示例中,第一个List包含1、2、3和4,而第二个List包含2、4、6和8。最终输出的结果是Different items: [1, 3],即第一个List中的1和3是不同的项。
java两个数组快速找出不同的值
你可以使用Java的 HashSet 来解决这个问题。首先,将一个数组的所有元素添加到 HashSet 中,然后遍历第二个数组,检查每个元素是否在 HashSet 中存在。如果不存在,则说明该元素是两个数组中不同的值。
以下是一个示例代码:
```java
import java.util.HashSet;
public class DifferentValues {
public static void main(String[] args) {
int[] array1 = {1, 2, 3, 4, 5};
int[] array2 = {2, 4, 6, 8};
HashSet<Integer> set = new HashSet<>();
for (int i : array1) {
set.add(i);
}
System.out.println("Different values:");
for (int i : array2) {
if (!set.contains(i)) {
System.out.println(i);
}
}
}
}
```
该代码将输出在第一个数组中不存在的值:
```
Different values:
6
8
```
希望这能帮到你!如果你还有其他问题,请随时问我。