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

する必要があります私はあなたに答えを与えるだろうが、あなたは最初にGoogleで問題を調べるためにいくつかの時間を投資する必要があります。 Googleは「ほとんど」すべてのもの...

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]); 
      } 
    } 
} 

そして、それは何も返していない場合は、あなたの表示方法がvoidでなければなりません。..

+0

感謝を知って、私はもちろん、グーグルでみました。このような細部を見つけることは非常に難しいです。たとえば、配列をループする方法を簡単に見つけることができますが、ディスプレイを別の方法に分割する方法を見つけることは、見つけるのが難しいです。 – Sackling

0

intArrayはコンストラクタでローカル変数で何をすべきかわかりません。
他には存在しません。

代わりにプライベートフィールドを作成する必要があります。

0
あなたは LargeInteger方法の外に配列を宣言する必要が

、例えば

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

intArrayLargeIntegerクラスのメンバーの代わりに、コンストラクタに地元ください:ちょうど

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]); 
      } 
    } 
} 
関連する問題