import java.util.*; public class Task { public static void main(String[] args) { List<String> names = new ArrayList<>(Arrays.asList(args)); Collections.addAll(names, "John", "Kate", "Tom", "Bob", "Alice"); // 排序---------------------------------------------- /* TODO 对names集合进行排序 */ Collections.sort(names); System.out.println(names); // 打乱----------------------------------------------- Random random = new Random(names.size()); /* TODO 使用random打乱names集合 */ System.out.println(names); } }
时间: 2023-05-19 08:05:44 浏览: 56
对names集合进行排序的代码如下:
Collections.sort(names);
使用random打乱names集合的代码如下:
Collections.shuffle(names, random);
相关问题
去重复数字代码完善:import java.util.ArrayList; public class Main { public static void main(String[] args) { int[] arr = {1, 1, 2, 3}; ArrayList<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < arr.length; i++) {
可以使用一个set来存储已经出现过的数字,每次遍历到一个数字时,先判断set中是否已经包含该数字,若没有则将其加入set和list中,否则跳过该数字。代码如下:
```java
import java.util.ArrayList;
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
int[] arr = {1, 1, 2, 3};
ArrayList<Integer> list = new ArrayList<Integer>();
HashSet<Integer> set = new HashSet<Integer>();
for (int i = 0; i < arr.length; i++) {
if (!set.contains(arr[i])) {
set.add(arr[i]);
list.add(arr[i]);
}
}
System.out.println(list); // [1, 2, 3]
}
}
```
import java.util.*; import java.util.Collections; public class Test01 { public static void main(String[] args) { Scanner scanner=new Scanner(System.in); List<Integer> list=new ArrayList<>(); for(int i=0;i<list.size();i++) list.add(scanner.nextInt()); Collection.sort(list); } }
在你的代码中,你导入了`java.util.*`和`java.util.Collections`,这是正确的。然而,在调用`Collections.sort(list)`时出现了问题。
问题在于你使用了错误的类名。正确的方法是`Collections.sort(list)`而不是`Collection.sort(list)`。
请将代码中的`Collection.sort(list)`更改为`Collections.sort(list)`,然后重新尝试运行。这样应该就能够正确地对列表进行排序了。
以下是修正后的代码示例:
```java
import java.util.*;
import java.util.Collections;
public class Test01 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<Integer> list = new ArrayList<>();
for (int i = 0; i < list.size(); i++)
list.add(scanner.nextInt());
Collections.sort(list);
}
}
```
请注意,你还需要在读取输入值之前确定列表的大小,否则列表将始终为空。可以使用`list.size()`来获取列表的大小,并且在循环之前添加元素。