| 知乎专栏 |
package cn.netkiller.example;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.TreeSet;
public class Test {
public Test() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
// TODO Auto-generated method stub
// A A B E F G C D
String[] array = { "A", "A", "B", "E", "F", "G", "C", "D" };
Collection<String> list = new ArrayList<String>(Arrays.asList(array));
for (String str : list) {
System.out.print(str + " ");
}
System.out.println();
// A A B E F G C D
Collection<String> linkedList = new LinkedList<String>(Arrays.asList(array));
for (String str : linkedList) {
System.out.print(str + " ");
}
System.out.println();
// 无重复,无序 D E F G A B C
Collection<String> hashSet = new HashSet<String>(Arrays.asList(array));
for (String str : hashSet) {
System.out.print(str + " ");
}
System.out.println();
// 无重复 A B C D E F G
Collection<String> treeSet = new TreeSet<String>(Arrays.asList(array));
for (String str : treeSet) {
System.out.print(str + " ");
}
System.out.println();
// 无重复 A B E F G C D
Collection<String> linkedHashSet = new LinkedHashSet<String>(Arrays.asList(array));
for (String str : linkedHashSet) {
System.out.print(str + " ");
}
}
}
输出结果
A A B E F G C D A A B E F G C D A B C D E F G A B C D E F G A B E F G C D
public static List<String> list = new ArrayList<String>();
static {
list.add("录入");
list.add("变更");
list.add("收藏");
list.add("在售");
list.add("展出");
}
var list = List.of("Java", "Python", "C");
var copy = List.copyOf(list);
System.out.println(list == copy); // true
var list = new ArrayList<String>(); var copy = List.copyOf(list); System.out.println(list == copy); // false
数组转List
String[] arrays = {"tom", "jack", "kate"};
List<String> stringList= Stream.of(arrays).collect(Collectors.toList());
package cn.netkiller.demo;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class TestList {
public TestList() {
// TODO Auto-generated constructor stub
}
public static void main(String[] args) {
List<String> list = Arrays.asList("1", "2", "3");
// jdk11 之前这样写
List<Integer> list1 = list.stream().map(Integer::parseInt).collect(Collectors.toList());
System.out.println(list1);
// jdk16 现在可以这样写
List<Integer> list2 = list.stream().map(Integer::parseInt).toList();
System.out.println(list2);
}
}
List<String> inputStringList = Arrays.asList("Neo|Netkiller|Tom|Jerry".split("|"));
List<String> wordsList = Arrays.asList("Neo|Tom".split("|"));
System.out.println(inputStringList.containsAll(wordsList));
package cn.netkiller.test;
import java.util.Arrays;
import java.util.List;
public class Test {
public static void main(String[] args) throws InterruptedException {
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
// 创建一个流并过滤出长度大于4的名字,然后打印
names.stream()
.filter(name -> name.length() > 4)
.forEach(System.out::println);
}
}
List<String> list = Arrays.asList("a","b","c");
int index = (int) (Math.random()* list.size());
System.out.println(list.get(index));
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class RandomListElement {
public static void main(String[] args) {
// 初始化一个列表
List<String> list = new ArrayList<>();
list.add("元素1");
list.add("元素2");
list.add("元素3");
list.add("元素4");
list.add("元素5");
// 方法1:使用 Random 类
Random random = new Random();
String randomElement1 = list.get(random.nextInt(list.size()));
System.out.println("随机选取的元素 (使用 Random): " + randomElement1);
// 方法2:使用 ThreadLocalRandom (Java 8+)
String randomElement2 = list.get(
java.util.concurrent.ThreadLocalRandom.current().nextInt(list.size())
);
System.out.println("随机选取的元素 (使用 ThreadLocalRandom): " + randomElement2);
}
}
使用 idea 写代码,list 变量可以看到 getFirst() / getLast() 但实际上 list 并没有两个方法,这时 idea 模版造成的。
java: 找不到符号 符号: 方法 getFirst() 位置: 类型为java.util.ArrayList<java.lang.String>的变量 list
// 创建一个ArrayList对象
ArrayList<String> list = new ArrayList<>();
// 添加元素到列表中
list.add("apple");
list.add("banana");
list.add("orange");
// 获取最后一个元素
// String firstElement = list.getFirst();
// String lastElement = list.getLast();
String lastElement = list.get(list.size() - 1);
System.out.println("最后一个元素是:" + lastElement);
List<CompletableFuture<String>> completableFutures = Stream.of(future1, future2, future3).toList();
CompletableFuture[] completableFutureArray = completableFutures.toArray(CompletableFuture[]::new);
List<CompletableFuture<String>> completableFutures = Stream.of(future1, future2, future3).toList();
var completableFutureArray = completableFutures.toArray(CompletableFuture[]::new);