ArrayList和toString

时间:2012-05-06 12:36:35

标签: java collections arraylist tostring

我想问一下,我如何使用ArrayList来存储toString()。我有一个类,最后有一个toString,我必须将类中的toString存储到ArrayList中。

像这样:音乐名称,作者,发行年份,正在播放              String,String,int,boolean

5 个答案:

答案 0 :(得分:2)

希望您在特定班级toString()方法中使用格式正确的文字,
使用

List<String> listDesired = new ArrayList<String>( 10 );
listDesired.add( myMusicDataClassInstance.toString() );

答案 1 :(得分:1)

您可以使用"" + x技巧,以避免在NullPointerException为空的情况下x

public List<String> musicToString(List<Music> musicList) {
  final List<String> strings = new ArrayList<String>();
  for (Music m : musicList) strings.add("" + m);
  return strings;
}

这是有效的,因为连接运算符+在所有引用类型的操作数上隐式调用String.valueOf

如果这是您的审美偏好,您也可以明确地写String.valueOf。它还有一个边际好处,绝对不能实例化StringBuilder(尽管编译器很可能会避免这种情况,因为它可以看到空字符串文字)。

答案 2 :(得分:1)

问题不清楚,但是如果您的对象已经定义了toString()方法,则不需要将它们分别存储在数组列表中。只需将对象添加到arrayList并执行Collections.toString(yourList);

答案 3 :(得分:0)

您应该覆盖该类的toString(),并在toString()方法中定义将该字符串转换为ArrayList对象的业务逻辑。

答案 4 :(得分:0)

List<String> listDesired = new ArrayList<String>( 10 );
相关问题