java各种数据结构的输入输出
时间: 2025-01-01 19:10:43 浏览: 8
### Java 中不同数据结构的输入输出方法
#### 数组的输入输出
数组是最简单的线性数据结构之一,在Java中可以通过循环遍历的方式进行输入和输出。
对于字符串类型的数组,可以使用`Scanner`类来接收用户的输入并存储到数组中。而输出则可以直接通过增强for循环或是传统的for循环配合`System.out.print()`或`System.out.println()`语句完成[^2]:
```java
import java.util.Scanner;
public class ArrayExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] array = new String[3];
for (int i = 0; i < array.length; ++i){
System.out.printf("Enter string %d: ", i + 1);
array[i] = scanner.nextLine();
}
System.out.println("Array elements are:");
for (String element : array){
System.out.println(element);
}
}
}
```
#### 集合框架下的List列表输入输出
当涉及到更复杂的数据结构如`ArrayList`时,同样适用上述提到的方法来进行元素的读取与打印;不过这里推荐采用迭代器模式或者Lambda表达式的写法使代码更加简洁高效[^3]:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ListExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
List<String> list = new ArrayList<>();
int n = Integer.parseInt(scanner.nextLine());
while(n-- > 0){
list.add(scanner.nextLine());
}
list.forEach(System.out::println);
}
}
```
#### Map映射表的输入输出
针对键值对形式的地图容器而言,除了常规的foreach语法外还可以运用Stream API以及lambda函数简化逻辑处理过程:
```java
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class MapExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
Map<Integer, String> map = new HashMap<>();
int m = Integer.parseInt(scanner.nextLine());
while(m-- > 0){
int key = Integer.parseInt(scanner.nextLine());
String value = scanner.nextLine();
map.put(key,value);
}
map.forEach((k,v)->{
System.out.printf("%d:%s\n", k ,v );
});
}
}
```
以上展示了如何在Java编程语言里操作几种常见的内置数据结构,并实现了它们之间相互转换成其他表示形式的功能。每种情况都给出了具体的实例说明以便更好地理解这些概念和技术的应用场景。
阅读全文