我在Java中有一个集合arraylist。
例如,当我这样做时:
test是集合。
System.out.println(test.getTester());
为什么我得到以下结果: [占士邦]
我只想要jamesbond,但为什么他们也给我[]?
答案 0 :(得分:2)
根据你的问题,假设你有一个字符串的ArrayList作为集合(因为它打印[jamesbond])。
当您编写test.getTester()
时,java会调用集合上的toString()方法,它会在[
和]
之间打印元素,并用逗号分隔。
您可以在集合上使用迭代器来打印各个元素。
List<String> stringColl = Arrays.asList("jamesbond","danielocean");
// Java 8
stringColl.forEach(stringElem -> System.out.println(stringElem));
// Java 7 or below
for(String stringElem : stringColl){
System.out.println(stringElem);
}
答案 1 :(得分:0)
让一个字符串帮助你并使用替换方法......
// if your list doesnt contain any element with the chars [ or ]
String listNoBrackets = l.toString().replace("[", "").replace("]", "");
System.out.println(listNoBrackets);
// if your list contains at least 1 element with the chars [ or ]
String listWithBrackets = l.toString().substring(1, l.toString().length() - 1);
System.out.println(listWithBrackets);
答案 2 :(得分:0)
使用substring方法删除第一个和最后一个字符。
String foo = test.getTester().toString();
System.out.println(foo.substring(1, foo.length() - 1);
注意:如果您尝试打印具有多个对象的数组,您将看到括号始终是第一个和最后一个字符,元素本身是用逗号分配的。