一、ArrayList
ArrayList类是一个可以动态变化的数组,与普通数组的区别就是它没有固定的长度。
import java.util.ArrayList;
ArrayList<String> arrList = new ArrayList<String>();
arrList.add("吐泡泡");
System.out.println(arrList.get(0));
arrList.set(0,"Java"); // 修改链表中的索引为0的元素
arrList.remove(0); // 删除元素
System.out.println("arrList的长度是:" + arrList.size());
二、BufferedReader
import java.io.BufferedReader;
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// 读取n
int n = Integer.parseInt(reader.readLine().trim());
// 读取第一个数组
List<Integer> list1 = readIntegers(reader, n);
private static List<Integer> readIntegers(BufferedReader reader, int n) throws IOException {
List<Integer> list = new ArrayList<>(n);
String line = reader.readLine().trim();
String[] numbers = line.split("\\s+");
for (String number : numbers) {
list.add(Integer.parseInt(number));
}
// 这里不再检查size,因为split应该按预期工作,除非输入格式错误
return list;
}
三、Scanner
import java.util.Scanner;
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
scanner.nextLine();
for (int i = 0; i < n; i++) {
// 读取三组称量结果
String[] result1 = scanner.nextLine().split(" ");
String[] result2 = scanner.nextLine().split(" ");
String[] result3 = scanner.nextLine().split(" ");
}
四、链表
import java.util.LinkedList;
public class LinkedListExample {
public static void main(String[] args) {
LinkedList<String> list = new LinkedList<>();
// 添加元素
list.add("A");
list.add("B");
list.add(1, "C");
System.out.println(list); // 输出: [A, C, B]
// 访问元素
System.out.println(list.get(1)); // 输出: C
// 删除元素
list.remove(1);
System.out.println(list); // 输出: [A, B]
// 检查元素
System.out.println(list.contains("A")); // 输出: true
System.out.println(list.indexOf("B")); // 输出: 1
}
}
五、Stack
import java.util.Stack;
Stack<Integer> stack = new Stack<>();
stack.push(Integer.parseInt(number));
int x = stack.pop();
六、数组
String[] list1 = new String[2];