2

2つの文字と1つの数字を含む配列リストを作成しました。たとえば「ab1」のように表示する必要があります。しかし、配列リストコード「pp4main.Letter@f7e6a96pp4」を含む印刷行を取得するたびに

これは私の配列リストです:ArrayList<Letter> letterlijst = new ArrayList<Letter>();

表示しようとしている私のコード:

public Kofferslot(char letter1, char letter2, int cijfer){

    Letter letterlijst1 = new Letter();
    letterlijst1.setLetter(letter1);
    Letter letterlijst2 = new Letter();
    letterlijst1.setLetter(letter2);

    letterlijst.add(letterlijst1);
    letterlijst.add(letterlijst2);


    Cijfer cijfer3 = new Cijfer();
    cijfer3.setCijfer(cijfer);

    String letterstring1 = letterlijst.get(0).toString();
    String letterstring2 = letterlijst.get(1).toString();

    System.out.println(letterstring1 + letterstring2 + cijfer3);
}
4

3 に答える 3

1

文字を出力するにはtoString()をオーバーライドするか、:を使用する代わりに:を使用する必要があります。

letterlijst.get(0)

このようなものを使用してください:

letterlijst.get(0).getLetter() // return letter1 of setLetter(letter1)
于 2012-12-06T12:56:13.440 に答える
1

andクラスtoString()のメソッドをオーバーライドする必要があります。LetterCijfer

このようなもの:

@Override
public String toString()
{
    return String.valueOf(mijnLetter);
}

getLetter()しかし、より良いアプローチは、toStringの代わりにgetter( )を使用することです。

于 2012-12-06T12:42:36.703 に答える
1

Letter クラスでオーバーライドtoString()すると、デフォルトでオブジェクトの toString() が呼び出されます

 @override
 public String toString() {
       return ""+ch1+ch2+number
  }

ch1、ch2 は Letter クラスの char 属性で、number は int 属性です

于 2012-12-06T12:43:07.773 に答える