我需要您的助手和帮助,以获取Java中对象的值,然后将输出转换为字符串数组,以便将其传递给过程。这是我的Java类:

public class PendingRequests  {

    private String requestDate; //Getter & Setter
    private String requestNo; //Getter & Setter
    private String employeeName; //Getter & Setter

}


在bean中,我定义了一个名为“ selectedRequests”的列表:

private List<PendingRequests> selectedRequests;


selectedRequests具有值,我需要从中获取requestNo的值,然后将其转换为字符串数组。通过尝试,我只能使用以下代码在控制台中打印它们:

for(Object obj : selectedRequests){
    System.out.println("Obj = "+((PendingRequests)obj).getRequestNo());


但这是正确的方法,下一步我该怎么做?

最佳答案

String[] requestNos = new String[selectedRequests.size()];

for (int i = 0; i < selectedRequests.size(); i++) {
    requestNos[i] = selectedRequests.get(i).getRequestNo();
}


这是同一件事的Java 8版本:

String[] requestNos = selectedRequests
                          .stream()
                          .map(r -> r.getRequestNo())
                          .toArray(String[]::new);

08-17 22:32