打印没有哈希码的列表

时间:2021-06-21 19:53:41

标签: java list groovy

尝试打印一个包含 nameOfListarrayList1arrayList2 的列表 someObj,但每次打印它时,我都会得到 [SomeTO@24a34c78, SomeTO@141e2fa]

我已经尝试将其打印为 nameList.toString()

List<SomeTO> nameOfList = new ArrayList<SomeTO>();

Ini ini = new Ini(new FileReader(Class2.someconstantvalue));
for (String stringName: ini.keySet()) {
   Section section = ini.get(stringName);

   ArrayList<String> arrayList1 = Arrays.asList(section.get(Class2.someconstants).split(","))
   ArrayList<String> arrayList2 = Arrays.asList(section.get(Class2.moreconstants).split(","))

   SomeTO someObj = new SomeTO()
   someObj.setsection(StringName)
   someObj.setArrayList1(arrayList1)
   someObj.setArrayList2(arrayList2)
   //some more code like this
   nameOfList.add(someObj)
}
   //I want to print nameOfList here before I return it so I can be sure its right.
   return nameOfList
  

2 个答案:

答案 0 :(得分:1)

您必须覆盖 SomeTO 类中的 Object.toString() 方法

class SomeTO {

// your methods

   public String toString() {
       return "some information";
   }
}

toString() 方法中返回类的字段值是一种很好的做法。

您可以阅读有关 here 主题的更多信息。

答案 1 :(得分:0)

您当前看到的是地址,以便查看值,覆盖 toString() 方法并返回您希望返回的任何值。 @覆盖 公共字符串 toString(){ 返回“值”;}