技術と日常。

日々の気が付いたこと・気になったことを残しておきます。

[Java17]Streamを返すメソッドを一覧にしてみた

なぜ調べたの?

正規表現を使用するコードを書いていたところ、Matcher#results()という、一致結果をStreamで返すメソッドが、Java9から追加されていたことを知りました。
ほかにも便利メソッドがないかどうか気になり、調べてみました。

結果

package class method
java.io BufferedReader lines()
java.lang ClassLoader resources(String)
java.lang Process children()
java.lang Process descendants()
java.lang ProcessHandleImpl children()
java.lang ProcessHandleImpl descendants()
java.lang String lines()
java.net NetworkInterface inetAddresses()
java.net NetworkInterface subInterfaces()
java.net NetworkInterface networkInterfaces()
java.nio.file Files list(Path)
java.nio.file Files walk(Path, int, FileVisitOption...)
java.nio.file Files walk(Path, FileVisitOption...)
java.nio.file Files find(Path, int, BiPredicate<Path, BasicFileAttributes>, FileVisitOption...)
java.nio.file Files lines(Path, Charset)
java.nio.file Files lines(Path)
java.security PermissionCollection elementsAsStream()
java.sql DriverManager drivers()
java.time LocalDate datesUntil(LocalDate)
java.time LocalDate datesUntil(LocalDate, Period)
java.util Arrays stream(T[])
java.util Arrays stream(T[],int,int)
java.util Optional stream()
java.util Scanner tokens()
java.util Scanner findAll(Pattern)
java.util Scanner findAll(String)
java.util ServiceLoader stream()
java.util SplittableRandom splits()
java.util SplittableRandom splits(long)
java.util SplittableRandom splits(SplittableGenerator)
java.util SplittableRandom splits(long, SplittableGenerator)
java.util.jar JarFile stream()
java.util.jar JarFile versionedStream()
java.util.random RandomGeneratorFactory all()
java.util.regex Matcher results()
java.util.regex Pattern splitAsStream(CharSequence)
java.util.stream Stream empty()
java.util.stream Stream of(T)
java.util.stream Stream ofNullable(T)
java.util.stream Stream of(T...)
java.util.stream Stream iterate(T, UnaryOperator)
java.util.stream Stream iterate(T, Predicate<? super T>, UnaryOperator)
java.util.stream Stream generate(Supplier<? extends T>)
java.util.stream Stream concat(Stream<? extends T>, Stream<? extends T>)
java.util.stream StreamSupport stream(Spliterator, boolean)
java.util.stream StreamSupport stream(Supplier<? extends Spliterator>, int, boolean)
java.util.zip ZipFile stream()
javax.xml.catalog Catalog catalogs()

調査方法

IntelliJFind Usages > Method Return Typeを、Export to Text FIleにて出力し、SpreadSheetと人力でごちゃごちゃしました。

最後に

抜けやミスがありましたらすみません。
がんばってリファレンスへのリンクを貼りましたので、是非眠れないときなどに巡回してみてください。
Java23が出たら、更新するかもしれません。