public class Main {
static class Account {
private Long id;
private String name;
private Book book;
public Account(Long id, String name, Book book) {
this.id = id;
this.name = name;
this.book = book;
}
public String getName() {
return name;
}
}
public static void main(String[] args) {
List<Account> data1 = new ArrayList<>();
data1.add(new Account(1L,"name",null));
List<String> collect = data1.stream().map(account -> account.getName()).collect(Collectors.toList());
System.out.println(collect);
}
}
Nel codice di cui sopra che sto cercando di convertire la seguente rigaJava 8 lambda per Kotlin lambda
List<String> collect = data1.stream().map(account -> account.getName()).collect(Collectors.toList());
in codice Kotlin. L'editor online Kotlin mi fornisce il seguente codice
val collect = data1.stream().map({ account-> account.getName() }).collect(Collectors.toList())
println(collect)
che genera errore di compilazione quando provo a eseguirlo.
come risolvere questo problema ???
o che cosa è il modo Kotlin ottenere l'elenco di stringa dalla lista di oggetto account
collezioni
E l'errore è? –
flusso di riferimento non risolto, riferimento irrisolto Collettori – Mahabub
Quindi il problema non è il lambda. Il problema è che le raccolte di Kotlin non hanno un metodo stream(). Vedere https://youtrack.jetbrains.com/issue/KT-5175 –