我需要你的助手并帮助在Java中获取对象的值,然后将输出转换为String Array,以便将其传递给过程。这是我的Java类:
public class PendingRequests {
private String requestDate; //Getter & Setter
private String requestNo; //Getter & Setter
private String employeeName; //Getter & Setter
}
在bean中我定义了一个名为“selectedRequests”的List:
private List<PendingRequests> selectedRequests;
selectedRequests有值,我需要从中获取requestNo的值,然后将其转换为String Array。通过我的尝试,我只能使用以下代码在控制台中打印它们:
for(Object obj : selectedRequests){
System.out.println("Obj = "+((PendingRequests)obj).getRequestNo());
但这是正确的方法,我接下来应该做什么?
答案 0 :(得分:9)
self
这是同一件事的Java 8版本:
String[] requestNos = new String[selectedRequests.size()];
for (int i = 0; i < selectedRequests.size(); i++) {
requestNos[i] = selectedRequests.get(i).getRequestNo();
}
答案 1 :(得分:2)
String[] stringArray = new String[selectedRequests.size()];
int i =0;
for(PendingRequests request: selectedRequests){
stringArray[i] = request.getRequestNo();
i++;
}
答案 2 :(得分:2)
在Java 8中:
selectedRequests.stream()
.map(PendingRequests::getRequestNo)
.forEach(System.out::println)
答案 3 :(得分:0)
尝试:
INSTALLS
原谅我它会抛出任何错误,我只是在飞行中写下来。并且不要忘记添加空检查,因为如果某些内容为null,此代码将抛出NullPointerException。
答案 4 :(得分:0)
Java 8单行
String[] requestNos = selectedRequests.stream()
.map(
pr -> pr.getRequestNo()
)
.collect(Collectors.toList())
.toArray(new String[]{});