ArrayList<String> list = new ArrayList<String>(); String s1 = new String("Java"); String s2 = new String("Java"); list.add(s1); list.add(s2); System.out.println((list.get(0) == list.get(1)) + " " + (list.get(0)).equals(list.get(1)));
时间: 2024-02-29 14:55:41 浏览: 23
这段代码创建了一个 ArrayList 对象,其中包含两个 String 类型的对象 s1 和 s2,它们通过 new String() 方法实例化。然后将这两个对象添加到列表中。在输出语句中,首先比较列表中的第一个和第二个元素的引用,它们指向的是不同的对象,因此输出结果为 false。接着,使用 equals() 方法比较两个 String 对象的值,因为它们的值相等,所以输出结果为 true。
相关问题
List<string>
以下是将String数组转换为List<String>和将List<String>转换为String数组的示例:
1. 将String数组转换为List<String>:
```java
String[] arr = new String[]{"s1","s2","s3"};
List<String> list = Arrays.asList(arr);
```
2. 将List<String>转换为String数组:
```java
List<String> list = new ArrayList<String>();
list.add("s1");list.add("s2");
list.add("s3");
String[] arr = list.toArray(new String[list.size()]);
```
stream List<String>取最大值
要取得一个 `List<String>` 中最大的元素,需要对其中的每个元素进行比较。但是由于 `String` 类型没有内置的大小比较方法,因此需要使用 `Comparator` 接口来定义一个比较器。
下面是一个使用 `Comparator` 接口的示例代码:
```java
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
String max = Collections.max(list, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.compareTo(s2);
}
});
System.out.println("Max element: " + max);
```
在上面的代码中,我们使用 `Collections.max` 方法来获取列表中的最大元素。该方法需要传入一个 `Comparator` 对象来比较列表中的元素。我们使用匿名内部类来创建一个 `Comparator` 对象,实现 `compare` 方法来比较两个字符串的大小。最后,我们打印出最大的元素。
需要注意的是,这种方式只适用于对 `List<String>` 中的元素进行字典序比较。如果需要进行其他类型的比较,需要在 `compare` 方法中实现相应的逻辑。