发现


牛客网Java常用输入方法

## 基本格式及所需的库 在Java5中引入了`Scanner`库,这个库在日常使用中是非常方便的,可以直接将输入按照格式读取,但是,在牛客上经过测试,效率要比`BufferedReader`差很多,因此,在做题时推荐还是用`BufferedReader`和`InputStreamReader`来使用。 在这些平台,一般要求主类名为Main,然后将方法写到`main()`方法中,因此,我们的类大概是类似如下的格式: ```java import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class Main { public static void main(String[] args) throws IOException{ ...... } } ``` 有一点要注意的是,由于在IO时所用的方法往往是有声明必检异常的,所以这里如果不想在代码中加入try-catch块的话,`main()`方法也要声明抛出`IOException`异常。 ## 输入为一个字符串时 若输入为一个字符串,如: ```java abcd ``` 相应的读取输入代码: ```java // 创建一个BufferedReader对象 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 读取字符串 String line = br.readLine(); // 测试输入是否正确 System.out.println(line); ``` ## 若输入为多个数字 若输入为多个数字,如下: ```java 1 2 ``` 这个例子中有两个数字,则代码为: ```java // 创建一个BufferedReader对象 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 读取第一行数据 String line = br.readLine(); // 将字符串根据空格进行分隔 String[] strings = line.trim().split(" "); // 分别将其中的每个数值读出 int n = Integer.parseInt(strings[0]); int v = Integer.parseInt(strings[1]); // 测试输入是否正确 System.out.println("n: " + n + "\tv: " + v); ``` ## 若输入中有一个数组,且有数组的长度 一种常见的输入方式为,给出数行数据,其中一行为数组,而在前面某一行中,会有一个数据为其数组的位数。如: ```java 7 6 1 2 3 4 5 6 7 ``` 其中第二行为一个数组,第一行的第一个数字表示第二行数组的长度,则读取输入的代码为: ```java // 创建一个BufferedReader对象 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 读取第一行数据 String line = br.readLine(); // 将字符串根据空格进行分隔 String[] strings = line.trim().split(" "); // 分别将其中的每个数值读出 int n = Integer.parseInt(strings[0]); int v = Integer.parseInt(strings[1]); // 读取第二行数据 line = br.readLine(); strings = line.trim().split(" "); // 创建一个int型的数组用来储存第二行的多个数字 int[] nums = new int[n]; for (int i = 0; i < n; i ++) { nums[i] = Integer.parseInt(strings[i]); } // 测试输入是否正确 for (int num: nums) { System.out.print(num + " "); } ```
0 个回复 • 29次浏览 • 2021-09-13 13:16

图片可以使用嘛?

![](https://haiming-community.oss-cn-beijing.aliyuncs.com/pictures/dc811a8f-fe09-412d-9df2-2f83ae99fad4.jpg)
0 个回复 • 75次浏览 • 2021-07-20 01:12

打卡~

网站还不错~赞!
0 个回复 • 56次浏览 • 2021-07-20 01:06

多账号测试

多账号测试
1 个回复 • 54次浏览 • 2021-07-08 16:25

第一个问题

问题测试
2 个回复 • 69次浏览 • 2021-07-08 16:16

热门话题


关注海明的微信