2017-09-28 87 views
-3

我试图加2点的整数在一起,打印出来的结果,一个任务上CS Academy。我使用BufferReader读取整数结果,并使用增强型for循环将值放入A & B;但是,它只是提供了一个空白的结果。如何修复增强型for循环和阅读器? https://csacademy.com/contest/archive/task/addition/的Java:添加2号与BufferReader,不工作的CS学院

-

任务: 现在给你两个整数值A和B,计算并输出其总和。

标准输入 第一行包含两个整数A和B.

标准输出 输出表示A的总和和B.


import java.util.*; 
    import java.lang.*; 
    import java.io.*; 

    class Main { 
     public static void main (String[] args) throws java.lang.Exception { 
      int A, B; 
      A =0; B =0; 

     BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
     System.out.print("Enter Integer:"); 
      int i = Integer.parseInt(br.readLine()); 

     int[] values = new int[i]; 
      for(int value: values) { 
      A=value[0]; 
      B=value[1]; 
      } 
     System.out.println(A + B); 

     } 
    } 
+0

目前尚不清楚您的目标是什么。你能描述一个样本输入和预期输出吗?直到那时才回答你的问题。 – VHS

+0

输入:2 3.预期输出:5 – ComputerGuy123

+0

有作为“加入2号与'BufferedReader'”这样的东西。尝试描述你的正确。它也会迫使你清楚地思考*关于它。 – EJP

回答

0

你的程序没有按一个单一的数字不工作,因为首先你只读一个数字而不是两个。其次,你正在添加两个数字,它们被初始化为0,但从来没有得到任何其他值。您希望用户输入由空格分隔的两个数字。因此,您需要将输入字符串(“10 15”)分隔一个空格,然后将每个单独的字符串视为一个数字,然后对其进行总结。

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
System.out.print("Enter Integer:"); 
String[] str = br.readLine().split(" ", 2); 
System.out.println("Sum is " + (Integer.parseInt(str[0]) + Integer.parseInt(str[1]))); 
br.close(); 
+0

你的方法适用于简单的数字,但是当你输入:366 789.它不起作用,也不能很好地分析底片。 – ComputerGuy123

+0

@ ComputerGuy123,那是不对的。它适用于你描述的两种情况。只需运行我提供的代码片段即可。 – VHS

+0

我收到以下错误:线程“main”java.lang.NumberFormatException中的异常:对于输入字符串:“883198518” \t at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) \t at java.lang。的Integer.parseInt(Integer.java:580) \t在java.lang.Integer.parseInt(Integer.java:615) \t在Main.main(Main.java:41) – ComputerGuy123