2011-07-17 6 views
1

사용자가 입력 한 두 개의 값을 추가하려면 어떻게해야합니까?사용자가 입력 한 두 개의 값 추가하기

import java.io.*; 

public class InputOutput { 
    public static void main(String[] args) { 
     String base=""; 
     String height=""; 

     BufferedReader input = new BufferedReader(new InputStreamReader(System.in)); 
     try { 
      System.out.print("Input base value = "); 
      base = input.readLine(); 
      System.out.print("Input height value = "); 
      height = input.readLine(); 
     } catch(IOException e) { 
      System.out.print("Error"); 
     } 

     System.out.println("The base is "+base+height); 
    } 
} 
+0

에서 System.out.println'잘못 무엇 (+베이스 + 높이 "기본입니다"); '? – Oswald

+1

@Oswald OP가 원합니다''base가 5입니다. "base는"+ base + height "('base = 2'와'height = 3' 일 때)입니다. 여기에 '베이스가 23입니다.' – Nivas

+0

아래 답변 중 하나가 받아 들여질 수 있습니까? – MGwynne

답변

2

먼저 입력 문자열을 숫자로 변환하십시오 (예 : Integer.parseInt).

두 개의 문자열 (또는 문자열과 숫자)을 "추가"하면 결과가 이러한 문자열을 연결합니다. 사용자가 예상하는대로 추가 번호의 결과는, 그 합, 그래서처럼 마지막 행 보일 것입니다 : 당신이 문자열로 baseheight을 치료하는 순간

System.out.println("The base is " + (baseNumber+heightNumber)); 
+0

문자열을 int로 변환하면 안됩니다. – Zhianc

+0

@js david 예,'parseInt' ('int'를 리턴하는'valueOf'와 비교하면,'Integer'를 리턴합니다)는 실제로 자동 선택 해제로 인해 더 나은 선택입니다. 내가 강조하고 싶었던 것은'int' (또는'Integer')가 항상 최상의 선택이되는 것은 아니며, 특히 여러분이 큰 입력이나 분수 입력을 예상 할 때 그렇습니다. – phihag

2

.

그래서 당신은 : +입니다

base + height = "2" + "3" = "23" 

는 문자열 연결입니다.

당신은 int들로 변환하는 Integer.parseInt를 사용할 필요가 다음에 추가 :

int ibase = Integer.parseInt(base); 
int iheight = Integer.parseInt(height); 
int sum = ibase + iheight; 
System.out.println("The base is " + sum); 
1
int sum = Integer.parseInt(base)+ Integer.parseInt(height); 
System.out.println("The base is "+ sum); 
1

왜 모두가 그것을 구문 분석 할합니까? 그냥 int 및 사용에 baseheight의 유형을 변경 :

input.nextInt() 
관련 문제