Java 输入多行字符串或者多个int数值的方法

时间:2018-07-18
今天小编就为大家分享一篇Java 输入多行字符串或者多个int数值的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

控制台输入

以下输入方法用于在控制台中进行输入,当输入当个换行符时,结束输入。但不适合在做算法题目是使用,可能是因为算法题目中用的是流的方式进行输入,最后不会输入多一个换行符,因而无法正确的结束输入而导致答案错误。

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);
  }
 }
}

以上这篇Java 输入多行字符串或者多个int数值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。