2014-01-20 3 views
1

응답 할 때 프로그래밍 속어를 최소한으로 유지했습니다. 저도 같은 오류가 발생 계속 :"int를 역 참조 할 수 없습니다"오류

int cannot be dereferenced 

나는 사용자가 정수와 내가 할 노력하고있어 그 입력을 수신하고 변수에 저장입니다 입력 텍스트 필드가 있습니다. 텍스트 필드의 변수는 pricePay입니다. 필요한 경우 더 많은 정보를 제공 할 수 있습니다.이 코드 줄을 잘못된 위치에 배치하고 있습니까? 내가 뭔가 빠진거야? 당신이

int pricePay = Integer.parseInt(pricePay.getText()); 
           ↑ 
          an int 

그런 다음 pricePayint하게 쓸 때

private void pricePayActionPerformed(java.awt.event.ActionEvent evt) {           
    int pricePay = Integer.parseInt(pricePay.getText()); 
}           
+1

당신은'pricePay' 텍스트 필드와 같은 이름을 가진 지역 변수 ('int pricePay')를 호출하고 있습니다. 그 라인은 괜찮 았지만, 다음 라인에서는 텍스트 필드가 아닌 정수를 사용하게됩니다. –

답변

2

, 그것은 데이터 멤버pricePay을 숨길 수 있습니다.

int은 원시이므로 getText() 등의 메서드가 없으므로 "int cannot be dereferenced" 오류가 발생합니다. 다음과 같이 할 수 있습니다.

int pricePay = Integer.parseInt(this.pricePay.getText()); 
           ↑ 

또는 (더 나은 방법으로) 메소드에서 선언하는 변수의 이름을 변경하십시오.