3 回答

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超13個(gè)贊
您可以使用streamsJava 8 中的 available 來簡(jiǎn)化您的代碼,如下所示。
List<Address> addrsList = Arrays.stream(adrs).map(adr -> {
Address address = new ReturnAddress();
address.setAdrsLine1(adr);
return address;
}).collect(Collectors.toList());

TA貢獻(xiàn)2003條經(jīng)驗(yàn) 獲得超2個(gè)贊
您可以使用流。我建議您在類中實(shí)現(xiàn)構(gòu)造函數(shù)Address,例如
Address(String adrsLine1) {
this.adrsLine1 = adrsLine1;
}
然后你可以用這個(gè)簡(jiǎn)短的代碼片段來做到這一點(diǎn):
List<Address> addrsList = Arrays.stream(adrs)
.map(adr -> new Address(adr))
.collect(Collectors.toCollection(ArrayList::new));
如果您需要特定的列表類型,例如ArrayList,您應(yīng)該使用Collectors.toCollection(ArrayList::new),否則(如果您可以接受任何列表類型)您可以直接使用Collectors.toList()。

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個(gè)贊
List<Address> addressList = Arrays.stream(AdrsArray)
.map(Address::new)
.collect(Collectors.toList());
您必須向接受的 Address 類添加一個(gè)構(gòu)造函數(shù)adrsLine1。
public class Address{
private String adrsLine1;
private String adrsLine2;
private String adrsLine3;
private String postalCode;
Address(String address1) {
adrsLine1 = address1;
}
}
添加回答
舉報(bào)