2012-03-22 6 views
0

같은 클래스의 별도 메서드에서 int [] 배열을 인쇄하려고합니다.표시 메서드에서 int [] 배열 인쇄

public class LargeInteger { 

    public LargeInteger(String s) { 

     int[] intArray = new int[s.length()]; 

     for (int i = 0; i < s.length(); i++) { 
      intArray[i] = Character.digit(s.charAt(i), 10); 
     } 
    } 

    public Object display() { 

     for (int i = 0; i < intArray.length; i++) {  
       System.out.print(intArray[i]); 
      } 
    } 
} 

내 intArray 명확하게 표시 방법에서 숨겨되고,하지만 난

답변

1

내가 당신에게 대답을 줄 것이다 그러나 먼저 구글에 문제를 검색하는 데 시간을 투자해야해야한다. 구글은 알고있다 "거의"모든 ...

public class LargeInteger { 

    private int[] intArray; 

    public LargeInteger(String s) { 

     intArray = new int[s.length()]; 

     for (int i = 0; i < s.length(); i++) { 
      intArray[i] = Character.digit(s.charAt(i), 10); 
     } 
    } 

    public void display() { 

     for (int i = 0; i < intArray.length; i++) {  
       System.out.print(intArray[i]); 
      } 
    } 
} 

그리고 그것은 아무것도 반환하지 않습니다 경우 표시 방법은 무효합니다 ..

+0

덕분에, 나는 물론 인터넷 검색을 시도했다. 그래도 이와 같은 세부 사항을 찾는 것은 매우 어렵습니다. 예를 들어 배열을 반복하는 방법을 쉽게 찾을 수 있지만 디스플레이를 다른 방법으로 분할하는 방법을 찾는 것은 찾기가 더 어렵습니다. – Sackling

0

intArray 생성자에서 지역 변수이다 할 것을 모르겠습니다.
다른 곳에서는 존재하지 않습니다.

대신 비공개 필드를 만들어야합니다. 당신은 LargeInteger 방법 이외의 배열을 선언 할 필요가

0

, 예를 들어

private int[] intArray; 

public LargeInteger(String s){ 

    this.intArray = new int[s.length()]; 

} 
0
public class LargeInteger { 

private int[] intArray; 

public LargeInteger(String s) { 

    this.intArray = new int[s.length()]; 

    for (int i = 0; i < s.length(); i++) { 
     intArray[i] = Character.digit(s.charAt(i), 10); 
    } 
} 

public Object display() { 

    for (int i = 0; i < this.intArray.length; i++) {  
      System.out.print(intArray[i]); 
     } 
} 
} 
0

intArray 생성자 대신 지역의 LargeInteger 클래스의 멤버 확인 : 그냥

public class LargeInteger { 

    private int[] intArray; 

    public LargeInteger(String s) { 

     intArray = new int[s.length()]; 

     for (int i = 0; i < s.length(); i++) { 
      intArray[i] = Character.digit(s.charAt(i), 10); 
     } 
    } 

    public Object display() { 

     for (int i = 0; i < intArray.length; i++) {  
       System.out.print(intArray[i]); 
      } 
    } 
} 
0

을 생성자에서 int[] intArray을 선언하십시오.

public class LargeInteger { 

    private int[] intArray; 

    public LargeInteger(String s) { 

     intArray = new int[s.length()]; 

     for (int i = 0; i < s.length(); i++) { 
      intArray[i] = Character.digit(s.charAt(i), 10); 
     } 
    } 

    public Object display() { 

     for (int i = 0; i < intArray.length; i++) {  
       System.out.print(intArray[i]); 
      } 
    } 
}