ストリームについて少し習得し、ループの代わりに使用できることがわかっています。このおもちゃの例では、グラフデータベースを使用して一連の文字列を格納しています。 dBはそれらを頂点として保存します。これらの頂点を取得し、代わりにストリームを使用してそれらをストリングに変換したいと思います。各頂点には一連のプロパティがあります。私はそれに鍵を与え、それは価値を返す。頂点が私が探しているプロパティを持っているなら、それをリストに追加します。私が頂点iDを格納していない場合。forループをストリームに変換するには
私はforループがありますが、代わりにストリームを使用する方法がわかりません。コードは次のとおりです。
public List<String> getItems() throws Exception {
Iterable<Vertex> myNodes = graph.getVertices();
List<String> myItems = new ArrayList<>();
// maybe there is a way to use stream API instead?
for(Vertex v : myNodes)
{
String value = v.getId().toString();
if(v.getPropertyKeys().contains(key))
{
value = v.getProperty(key);
}
myItems.add(value);
}
return myItems;
}