如何访问java中的对象列表元素?
How to access object list elements in java?
List<Object> list = new ArrayList<Object>();
List<Object> l = new ArrayList<Object>();
for (int i = 0; i < list.size(); i++) {
Object[] row = (Object[]) list.get(i);
l.add(Arrays.toString(row));
System.out.println("Element " + i + l);
}
根据那个代码,输出就是这样
[Air Bükreş, BU, BUR, groundops@airbucharest.ro, Doküman Paylaşımı, E-posta]
但我需要这样的单独
Air Bükreş
BU
BUR
groundops@airbucharest.ro
Doküman Paylaşımı
E-posta
我想要没有“[”和“]”的版本
您可以定义一个简单的方法而不是 Arrays.toString(row),以您的方式打印 out/returns
对象[]
public String printRow(Object[] row) {
StringBuilder s = new StringBuilder();
for (Object object : row) {
System.out.println(object);
s.append(object + "\n");
}
return s.toString();
}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class testo {
public static void main(String args[]){
List<Object> list = new ArrayList<Object>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
Iterator<Object> it = list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
输出:
1
2
3
4
5
您的问题很不清楚,但我相信您是在 ArrayList 的单个位置内添加整个数组。您可能在某个地方有 list.add(items)
,其中 items 是 Object[]
并且这不会给出任何错误,因为它也是一个对象,因此适合作为您列表中的一个项目。如果你想单独添加它们,你可以使用 list.addAll(Arrays.asList(items))
我一点也不清楚您要在代码中实现什么。但是,如果您的问题是 "how do I print out a list of strings each on a new line" 那么这里有两个答案:
list.stream().forEach(System.out::println);
和
System.out.println(list.stream().collect(Collectors.joining("\n")));
List<Object> list = new ArrayList<Object>();
List<Object> l = new ArrayList<Object>();
for (int i = 0; i < list.size(); i++) {
Object[] row = (Object[]) list.get(i);
l.add(Arrays.toString(row));
System.out.println("Element " + i + l);
}
根据那个代码,输出就是这样
[Air Bükreş, BU, BUR, groundops@airbucharest.ro, Doküman Paylaşımı, E-posta]
但我需要这样的单独
Air Bükreş
BU
BUR
groundops@airbucharest.ro
Doküman Paylaşımı
E-posta
我想要没有“[”和“]”的版本
您可以定义一个简单的方法而不是 Arrays.toString(row),以您的方式打印 out/returns
对象[]
public String printRow(Object[] row) {
StringBuilder s = new StringBuilder();
for (Object object : row) {
System.out.println(object);
s.append(object + "\n");
}
return s.toString();
}
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class testo {
public static void main(String args[]){
List<Object> list = new ArrayList<Object>();
list.add("1");
list.add("2");
list.add("3");
list.add("4");
list.add("5");
Iterator<Object> it = list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
}
输出:
1
2
3
4
5
您的问题很不清楚,但我相信您是在 ArrayList 的单个位置内添加整个数组。您可能在某个地方有 list.add(items)
,其中 items 是 Object[]
并且这不会给出任何错误,因为它也是一个对象,因此适合作为您列表中的一个项目。如果你想单独添加它们,你可以使用 list.addAll(Arrays.asList(items))
我一点也不清楚您要在代码中实现什么。但是,如果您的问题是 "how do I print out a list of strings each on a new line" 那么这里有两个答案:
list.stream().forEach(System.out::println);
和
System.out.println(list.stream().collect(Collectors.joining("\n")));