0

私は次のようなクラスを持っています:

public class Personel {

  private 
    String Name = null;
    String pathOne[] = new String[3];
    String pathTwo[] = new String[3];

  public void setName(String name){
    Name = name;
  }

  public void setPathOne(String Path[]){
    pathOne[0] = Path[0];
    pathOne[1] = Path[1];
    pathOne[2] = Path[2];
  }

  public void setPathTwo(String Path[]){
    pathTwo[0] = Path[0];
    pathTwo[1] = Path[1];
    pathTwo[2] = Path[2];
  }

  public String getName(){
    return Name;
  }

  public String getPathOne(){
    return pathOne[];
  }

  public String getPathTwo(){
    return pathTwo[];
  }
}

2 つの String 配列がpathOne[]あり、pathTwo[]それぞれに 3 つの要素があります。きちんと初期化できているか疑問です。

getPathOne()また、メソッドとメソッドでエラーが発生しgetPathTwo()ます。

文字列を次のように初期化する必要があります。

private 
    String Name = null;
    String[] pathOne = new String[3];
    String[] pathTwo = new String[3];

私のgetPathメソッドを次のように持っています:

public String[] getPathOne(){
    return pathOne;
}

public String[] getPathTwo(){
    return pathTwo;
}

申し訳ありませんが、この質問を入力しているときに別の方法に気付きました。まだ試していません。どんな助けでも大歓迎です。

4

3 に答える 3

0
  1. すべてのデータを配列に格納したいだけです。
  2. その後、以下のコードを使用します。

    public class Personel {`public Array getPathOne(){return pathOne []; }

    public Array getPathTwo(){return pathTwo []; }

    }

于 2013-02-08T10:10:10.073 に答える
0

私はそれを理解したと思います。

プライベート変数は次のようになります。

private 
    String Name = null;
    String pathOne[] = new String[3];
    String pathTwo[] = new String[3];

パス変数の設定は同じです。誰かが私が上でしたことの速記バージョンをすることができれば、私は本当に感謝します。まだ試していませんpathOne = Path;

returnメソッドは次のようになります

public String[] getPathOne(){
    return pathOne;
}

public String[] getPathTwo(){
    return pathTwo;
}

私が試したときに肯定的な結果を得ることができたので、それは機能します:

        Personel Joe = new Personel();
        Joe.setName("Joe");
        String PathOne[] = {"X", "Y", "Z1"};

        Joe.setPathOne(PathOne);

        String pathOne[] = Joe.getPathOne();
        String name = Joe.getName();

        for(int i = 0 ; i < pathOne.length ; i ++){
            System.out.println("Personel " + name +  " Letter at index " + i + " is " + pathOne[i] + ".");
        }
于 2013-02-08T10:12:41.903 に答える
0

return pathTwo[];これは正しい構文ではありません。

public String[] getPathOne(){...}これは配列を取得する正しい方法であり、インデックスで値を取得するpathOne代わりにできることです。getPathOne(index)

public String getPathOne(int index){
    if(pathOne.length<index)
       return pathOne[index];
    return null;
}

public String[] getPathTwo(int index){
    if(pathTwo.index<index)
       return pathTwo[index];
    return null;
}
于 2013-02-08T09:47:47.503 に答える