Java オラクルAPIドキュメント


JavaGold(SE11)学習の備忘録
黒本で解いた問題に関連して確認したAPIドキュメントのリンク集

##オラクルのドキュメント
- [すべてのクラス（日本語版）](https://docs.oracle.com/javase/jp/11/docs/api/allclasses.html)
- [すべてのクラス（英語版）](https://docs.oracle.com/en/java/javase/11/docs/api/allclasses.html)

####関数型インターフェース

| インターフェース名 |説明 | メソッド|戻り値 | 日本語 |英語|
|:------------|:------------|:------------|:------------|:------------:|:-----------:|
|Runnable|スレッドからインスタンスを実行する|	**run**()|void|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/lang/Runnable.html)         |[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html) |
Predicate|1つの引数の述語(boolean値関数)を表す|**test**​(T t)|boolean|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/function/Predicate.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Predicate.html)|


####インターフェース

| インターフェース名 |説明 | 主なメソッド | 日本語 |英語|
|:------------|:------------|:------------|:------------:|:-----------:|
|List       |順序付けられたコレクション        | **add**​(E e) <br> **get**​(int index)| [■](https://docs.oracle.com/javase/jp/11/docs/api/java.desktop/java/awt/List.html)         |[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/List.html) |
|Executor     |送信されたRunnableタスクを実行するオブジェクト | **execute**​(Runnable command)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/Executor.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/Executor.html)|
| ExecutorService|終了を管理するメソッド、および1つ以上の非同期タスクの進行状況を追跡するFutureを生成できるメソッドを提供するExecutor|**submit**​(Runnable task)| [■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/ExecutorService.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/ExecutorService.html)|
|ScheduledExecutorService|指定された遅延時間後または定期的にコマンドを実行するようにスケジュールできるExecutorService| **schedule**​(Runnable command, long delay, TimeUnit unit)<br>	**scheduleAtFixedRate**​(Runnable command, long initialDelay, long period, TimeUnit unit)           |[■](https://docs.oracle.com/javase/jp//11/docs/api/java.base/java/util/concurrent/ScheduledExecutorService.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/ScheduledExecutorService.html)|
Iterable|実装すると、オブジェクトが拡張for文("for-eachループ"文とも呼ばれる)のターゲットになる|**forEach​**(Consumer<? super T> action)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/lang/Iterable.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Iterable.html)|
Stream|順次および並列の集約操作をサポートする汎用的なストリーム|**forEach**​(Consumer<? super T> action)<br>**filter**​(Predicate<? super T> predicate)<br>**sorted**()<br>**reduce**​(BinaryOperator<T> accumulator)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/stream/Stream.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/stream/Stream.html)|
Collection|オブジェクトのグループを表す|**parallelStream**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/Collection.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Collection.html)|
Collector|目的に応じて実装可能な抽象メソッドが複数用意されている⇒一般的な処理用にCollectorsクラスが提供されている|**supplier**()<br>**accumulator**()<br>**combiner**()<br>**finisher**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/stream/Collector.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/stream/Collector.html)
Path|ファイル・システム内のファイルを特定するために使用可能なオブジェクト|	**resolve**​(Path other)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/nio/file/Path.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/Path.html)




####クラス
| クラス名 |説明 | 主なメソッド | 日本語 |英語|
|:------------|:------------|:------------|:------------:|:-----------:|
|Thread       |プログラム内での実行スレッド| **start**​() | [■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/lang/Thread.html)         |[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Thread.html)|
|Executors   |送信されたRunnableタスクを実行するオブジェクト | **execute**​(Runnable command)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/Executor.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/Executors.html)|
|AtomicInteger|原子的な更新が可能なint値|**addAndGet​**(int delta)| [■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/atomic/AtomicInteger.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/atomic/AtomicInteger.html)|
|CopyOnWriteArrayList|基になる配列の新しいコピーを作成することにより、スレッドセーフを実現するArrayListの拡張| **add​**(E e)           |[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/CopyOnWriteArrayList.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/CopyOnWriteArrayList.html)|
ReentrantLock|ReentrantLockは、最後にロックに成功したが、まだロック解除していないスレッドによって所有される|**lock**()<br>**unlock**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/concurrent/locks/ReentrantLock.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/locks/ReentrantLock.html)|
Optional|非null値を含んでも含まなくてもよいコンテナ・オブジェクト|**empty**()<br>**isEmpty**()<br>**ofNullable**​(T value)<br>**orElse**​(T other)<br>**orElseGet​**(Supplier<? extends T> supplier)<br>**ifPresent​**(Consumer<? super T> action)<br>**ifPresentOrElse​**(Consumer<? super T> action, Runnable emptyAction)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/Optional.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Optional.html)|
Arrays|配列をリストとして表示するためのstaticファクトリをもつ|**stream​**(T[] array)<br>**stream**​(int[] array)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/Arrays.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Arrays.html)|
Collectors|有用な各種リダクション操作を実装したCollectorの実装|**toList**()<br>**toMap**​(Function<? super T,​? extends K> keyMapper, Function<? super T,​? extends U> valueMapper)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/stream/Collectors.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/stream/Collectors.html)|
File|ファイルおよびディレクトリのパス名の抽象表現|**exists**()<br>**createNewFile**()<br>**getAbsolutePath**()<br>**mkdir**()<br>**listFiles**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/File.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/File.html)|
BufferedReader|文字、配列、行をバッファリングすることによって、文字型入力ストリームからテキストを効率良く読み込む|**readLine**()<br>**lines**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/BufferedReader.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/BufferedReader.html)|
BufferedInputStream|内部バッファ配列が作成される⇒バイトストリームを扱うときに使う|**read**()|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/BufferedInputStream.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/BufferedInputStream.html)|
Scanner|正規表現を使用したプリミティブ型および文字列の構文解析が可能な、単純なテキスト・スキャナ|**next**()<br>**useDelimiter**​(String pattern)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/util/Scanner.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/Scanner.html)|
ObjectOutputStream|プリミティブ・データ型とJavaオブジェクトのグラフをOutputStreamに書き込む|**writeObject**​(Object obj)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/ObjectOutputStream.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/ObjectOutputStream.html)
Files|ファイル、ディレクトリ、またはその他の種類のファイルを操作するstaticメソッドだけで構成される|**createFile**​(Path path, FileAttribute<?>... attrs)<br>**copy**(Path source,OutputStream out)<br>**move**​(Path source, Path target, CopyOption... options)<br>**newBufferedWriter**​(Path path, OpenOption... options)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/nio/file/Files.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/Files.html)

##抽象クラス
| クラス名 |説明 | 主なメソッド | 日本語 |英語|
|:------------|:------------|:------------|:------------:|:-----------:|
InputStream|バイト入力ストリームを表現するすべてのクラスのスーパー・クラス|**readAllBytes**()<br>**readNBytes**​(int len)|[■](https://docs.oracle.com/javase/jp/11/docs/api/java.base/java/io/InputStream.html)|[■](https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/InputStream.html)
nioパッケージの互換性

https://docs.oracle.com/cd/E26537_01/tutorial/essential/io/legacy.html