2014-01-26 1 views
0

나는 이것을 최대한 설명 할 것입니다. 정보를 추가하기 위해 메인에 사용자 입력 데이터가 있습니다. 그것은 bankparser 클래스를 거쳐 불가피하게이 코드와 관련없는 세 번째 클래스를 통과하는 데이터를 분리합니다. 그러나 은행을 인쇄하려고 할 때 오류가 발생합니다. BankParser 클래스의 반환 값이 null이므로 95 %가 긍정적입니다. 그 타입이 실제로 또 다른 클래스이기 때문에 어떤 리턴 타입이 필요한지 나는 확신하지 못한다. 누구든지이 문제를 해결하는 방법을 알고 있습니까? 감사! 은행 이름 : BANKNAME 은행 ID : 12345 은행 주소 :이 같은 것을 찾기 위해 은행 정보를 인쇄 할 때자바의 다른 메소드에서 데이터를 추출하고 적절한 리턴 유형을 찾으십시오.

나는 출력을 원하는 보스턴,

주요 MA를


case 'A': //Add Bank 
      System.out.print("Please enter the bank information:\n"); 
      inputInfo = scan.nextLine(); 
      bank1 = BankParser.bankParser(inputInfo); 
      accounts[index] = bank1; 
      index++; 
      break; 
     case 'B': //Display banks 
      for (int i=0; i< index; i++) 
        System.out.print(accounts[i].toString()); 
      break; 

BankParser


012 32,

}

+1

당신의 스택 트레이스를 작성하십시오 자체를 인쇄하는 데 사용됩니다 같은 는 BankParser에서이 라인을 바탕으로, 그것은 보인다. –

+0

스레드 "main"의 예외 java.lang.NullPointerException \t at Assignment4.main (Assignment4.java:47) – CuriousFellow

+0

'bankParser' 메소드가'Bank' 값을 가지므로'Bank' 클래스의 인스턴스를 반환해야합니다 메소드 (또는 클래스의 필드) 내부에서 작성됩니다. 어쩌면'BankSetter'를 돌려 주길 원할 것입니다. 또한 Java 규칙을 따르는 것이 좋습니다. 변수는'bankSetter'와'addressSetter'라고해야합니다. – Christian

답변

0

bankParser 방법 헤더는 은행 클래스의 객체를 반환해야한다고 말했습니다 있지만 그 전화를하고 항상 당신에게 널을 줄 것이다 결과를 저장하려고

null을 반환하도록 설정되어 있습니다. 이

System.out.println(bankInfoArray[0]); 
+0

그 sysout 행은 데이터가 다른 부분으로 분할되고 있는지를 확인하기위한 테스트 였고 실제로 삭제했기 때문에 코드에서 필요하지 않습니다. – CuriousFellow

+0

AddressSetter가 왜 다른 클래스입니까? Bank 클래스의 주소 속성을 설정하고 있습니까? – EricCharnesky

+0

별도의 클래스가 아닙니다. 그것은 하나의 대상입니다. – CuriousFellow

관련 문제