时间:2021-01-10 11:07:11 | 栏目:JAVA代码 | 点击:次
控制台输入
以下输入方法用于在控制台中进行输入,当输入当个换行符时,结束输入。但不适合在做算法题目是使用,可能是因为算法题目中用的是流的方式进行输入,最后不会输入多一个换行符,因而无法正确的结束输入而导致答案错误。
import java.util.Scanner; public class Main { public static void main(String[] args) { inputStr(); inputInteger(); inputIntInLine(); } //每行输入一个数值,输入多个数值 public static void inputInteger() { Scanner scanner = new Scanner(System.in); String nextLine = scanner.nextLine(); int sum = 0; while (nextLine != null && !nextLine.equals("")) { sum += Integer.parseInt(nextLine); System.out.println(sum); nextLine = scanner.nextLine(); } System.out.println("end of input integer"); } // 每行输入一个字符串,输入多个字符串 public static void inputStr() { Scanner scanner = new Scanner(System.in); String nextLine = scanner.nextLine(); while (nextLine != null && !nextLine.equals("")) { System.out.println(nextLine); nextLine = scanner.nextLine(); } System.out.println("end of input string"); } //输入多个数值,用空格隔开 public static void inputIntInLine() { Scanner scanner = new Scanner(System.in); String str = scanner.nextLine(); String[] numstr = str.split(" "); int[] nums = new int[numstr.length]; for(int i = 0; i < numstr.length; i ++) { nums[i] = Integer.parseInt(numstr[i]); } for(int n: nums) { System.out.println(n); } System.out.println("end of input int in a line"); } }
做算法题目时用的输入
以下方法在做算法题目时能够正确的结束输入。
import java.util.Scanner; public class Main{ public static void main(String[] args){ Scanner in = new Scanner(System.in); // while(in.hasNextLine()){ while(in.hasNext()){ String str = in.nextLine(); System.out.println(str); } } }