2014-10-15 3 views
-2

분명히 이것은 완성 된 프로그램이 아닙니다. 볼 수 있듯이 몇 가지 분수로 무언가를하려고합니다.하지만, input.nextLong(); 어떤 이상한 이유 때문에 유효한 기호로 인식되지 않고 있습니까? input.nextLong(); 상징으로 인식되지 않습니까?

내가 오류는 다음 링크에서 볼 수

import java.lang.Math; 
 
import java.util.Scanner; 
 
import java.io.PrintStream; 
 
import type.lib.*; 
 

 
public class Check04A 
 
{ 
 
\t public static void main(String[] args) 
 
\t { 
 
\t \t PrintStream print = new PrintStream(System.out); 
 
\t \t Scanner scan = new Scanner(System.in); 
 
\t \t print.println("For each fraction enter its numerator/denominator,"); 
 
\t \t print.println("pressing ENTER after each"); 
 
\t \t print.println("Enter x"); 
 
\t \t Fraction x = new Fraction(input.nextLong(),input.nextLong()); 
 
\t \t print.println("Enter y"); 
 
\t \t Fraction y = new Fraction(input.nextLong(),input.nextLong()); 
 
\t \t print.println("Enter z"); 
 
\t \t Fraction z = new Fraction(input.nextLong(),input.nextLong()); 
 
\t \t print.println("Enter t"); 
 
\t \t Fraction t = new Fraction(input.nextLong(),input.nextLong()); 
 
\t } 
 
}
: http://screencast.com/t/SFTkjV62ZhvU

감사

당신은 scan라는 이름 Scanner 변수 당신로 사용하고있다
+0

'분수'란 무엇입니까 –

+6

스캐너 변수는 '입력'이 아니라 '스캔'이라고합니다. – Eran

답변

3

input.nextLong() 그래서 그 의미에서 input은 컴파일러에서 분명히 정의되지 않았습니다.

input으로 변경해야합니다.

Scanner input = new Scanner(System.in); 
1
Fraction x = new Fraction(input.nextLong(),input.nextLong()); 

input 무엇입니까? 난 당신이

Scanner scan = new Scanner(System.in); 

하려면 스캐너 입력 = 새로운 스캐너 (System.in)을 변경할 수 있습니다 Scanner
Scanner scan = new Scanner(System.in); 

로 초기화 이후로는 scan

을해야한다고 생각;

또는 당신은 scan

1

input을 변경할 수 있습니다 당신은 "스캔"으로 스캐너 객체를 선언했다하지만 "입력"의 .SO 자바 컴파일러는 "입력"라는 초기화 된 개체를 찾을 수 없기 때문에 당신은 인식하지 못하는 오류가 . "입력"을 "스캔"으로 변경하면 컴파일러는 오류를주지 않습니다.

관련 문제