让arraylist char项返回到我可以用来打印输出的字符串

时间:2012-12-06 12:41:31

标签: java arraylist

我得到了一个包含两个字母和一个数字的arraylist。我需要显示它,例如“ab1”。但每当我得到一个带有一些arraylist代码的printline:“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);
}

3 个答案:

答案 0 :(得分:1)

您必须覆盖toString()Letter类的Cijfer方法。

这样的事情:

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

但更好的方法是使用getter(getLetter())而不是toString。

答案 1 :(得分:1)

在Letter类中覆盖toString(),默认情况下将调用Object的toString()

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

其中ch1,ch2是Letter类中的char属性,number是int属性

答案 2 :(得分:1)

你必须覆盖toString()来打印字母,而不是使用:

letterlijst.get(0)

使用类似的东西:

letterlijst.get(0).getLetter() // return letter1 of setLetter(letter1)