【Java笔记】第6章:数组
warning:
这篇文章距离上次修改已过235天,其中的内容可能已经有所变动。
第6章: 数组
- 数组的定义和使用
int[] numbers = {1, 2, 3, 4, 5}; // 定义并初始化一个整型数组
for (int number : numbers) { // 循环遍历数组中的每个元素
System.out.println(number); // 打印元素的值
}
- 多维数组
int[][] matrix = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
}; // 定义并初始化一个二维数组(矩阵)
for (int[] row : matrix) { // 外循环遍历每一行
for (int number : row) { // 内循环遍历每一行中的每个元素
System.out.print(number + " "); // 打印元素的值
}
System.out.println(); // 换行
}
- 数组的复制
int[] numbers = {1, 2, 3, 4, 5};
int[] copy = Arrays.copyOf(numbers, numbers.length); // 复制整个数组
for (int number : copy) {
System.out.println(number);
}
- 数组的排序
int[] numbers = {5, 3, 6, 1, 2};
Arrays.sort(numbers); // 对数组进行排序
for (int number : numbers) {
System.out.println(number);
}
- 数组的搜索
int[] numbers = {1, 2, 3, 4, 5};
int index = Arrays.binarySearch(numbers, 3); // 二分搜索数字3在数组中的位置
System.out.println(index); // 输出位置
- 填充数组
int[] numbers = new int[5];
Arrays.fill(numbers, 10); // 将数组所有元素填充为10
for (int number : numbers) {
System.out.println(number);
}
- 使用ArrayList管理动态数组
ArrayList<Integer> numbers = new ArrayList<>(); // 创建一个ArrayList实例
numbers.add(1); // 添加元素
numbers.add(2);
numbers.add(3);
for (int number : numbers) { // 遍历ArrayList中的元素
System.out.println(number);
}
- 使用LinkedList管理双向链表
LinkedList<Integer> numbers = new LinkedList<>(); // 创建一个LinkedList实例
numbers.add(1); // 添加元素
numbers.add(2);
numbers.add(3);
for (int number : numbers) { // 遍历LinkedList中的元素
System.out.println(number);
}
- 使用Queue接口(先进先出)
Queue<Integer> numbers = new LinkedList<>(); // Queue是接口,这里使用LinkedList实现
numbers.offer(1); // 添加元素
numbers.offer(2);
numbers.offer(3);
while (!numbers.isEmpty()) { // 循环直到队列为空
System.out.println(numbers.poll()); // 打印并移除队列头部元素
}
- 使用Stack类(先进后出)
Stack<Integer> numbers = new Stack<>(); // Stack是类,继承自Vector,后者是线程安全的
numbers.push(1); // 添加元素
numbers.push(2);
numbers.push(3);
while (!numbers.isEmpty()) { // 循环直到栈为空
System.out.println(numb
评论已关闭