Java,与扫描程序

时间:2016-05-01 06:28:14

标签: java function integer java.util.scanner

我在java中有一个关于Scanner的查询。

我想从用户那里获取输入并根据输入执行相同的操作。

如果用户在第一行输入1 2,在第二行输入3 4 5,在第三行输入6 7 8 9 ...所以它应该调用function(1,2); function(3,4,5); function(6,7,8,9); ...基于用户输入(参数大小不同)我想调用相同的函数。

有人能建议我这样做的最佳方式吗?

到目前为止,这是我的计划......

import java.util.Scanner;

public class HelloWorld {

 public static void main(String []args){
   Scanner sc = new Scanner(System.in);
   int length = sc.nextInt();          // length of array
   int query = sc.nextInt();       // how many queries you want to perform
   int arr[] = new int[length];

   for(int i=0;i<length;i++);
   {
    int arr[i] = sc.nextInt();
     }

   for(int j=0;j<query;j++) { 
    /* here i want to take input from user and if user inputs 2 integer than pass it like function(param1,param2) if he inputs 3 parameter than pass it like function(param1,param2,param3) 

   }

注意:对于我正在使用varargs的函数:function(int... a)

1 个答案:

答案 0 :(得分:2)

使用

  
      
  1. while(scannerInstance.hasNextLine)继续阅读输入并在循环中
  2.   
  3. 使用String value = scannerInstance.nextLine()阅读整行
  4.   
  5. 然后value.split("\\s+")根据分割输入字符串   一个或多个空格。
  6.   
  7. 使用Integer.toString()将每个字符串解析为整数。
  8.   
  9. 将步骤4中获得的整数传递给您的方法。
  10.   
  11. 结束循环。
  12.