いくつかのコードでストリームをどのように使用したかをリファクタリングしたいと考えています。最初の例は、私が現在どのように行っているかです。 2番目の例は、それをどのように見せようとしているのかです。
Set<String> results = new HashSet<String>();
someDao.findByType(type)
.stream()
.forEach(t-> result.add(t.getSomeMethodValue()) );
このようなものに見えますか?もしそうなら、どうやってそれをさせるのですか?
Set<String> results = someDao.findByType(type)
.stream()
.collect( /* ?? no sure what to put here */ );
つかいます Collectors.toSet
:
Set<String> results = someDao.findByType(type)
.stream()
.map(ClassName::getValue)
.collect(Collectors.toSet());