talosのプログラミング教室

Java Gold合格への道 ~日付/時刻API・Instant~

こんにちは。たろすです。今回は日付/時刻APIのInstantについて説明します。 Instantとは Instantオブジェクトの生成 おわりに おすすめの学習本 Instantとは Instantは1970年1月1日0時0分0秒からの経過秒数(エポック数)を保持するクラスです。 Instantオ…

Java Gold合格への道 ~日付/時刻API・日時の表示~

こんにちは。たろすです。今回は日付/時刻APIの日時の表示について説明します。 定義済みフォーマッタによるフォーマット カスタムパターンによるフォーマット おわりに おすすめの学習本 定義済みフォーマッタによるフォーマット 以下のように使用します。 …

Java Gold合格への道 ~日付/時刻API・時間の計算~

こんにちは。たろすです。今回は日付/時刻APIの時間の計算について説明します。 加算 減算 期間の計算 日付 時刻 おわりに おすすめの学習本 加算 加算する方法は二通りあります。 LocalDate date = LocalDate.of(2022, 1, 1); System.out.println(date.plus…

Java Gold合格への道 ~日付/時刻API・from~

こんにちは。たろすです。今回は日付/時刻APIのfromについて説明します。 使い方 注意点 おわりに おすすめの学習本 使い方 fromメソッドは日時を表すオブジェクトから別の日時を表すオブジェクトを取得する際に利用します。 LocalDateTime now = LocalDateT…

Java Gold合格への道 ~日付/時刻API・日時の比較~

こんにちは。たろすです。今回は日付/時刻APIにおける日時の比較について説明します。 isAfter isBefore isEqual おわりに おすすめの学習本 isAfter isAfterメソッドは引数の日時と比べて後であればtrueを返します。 LocalDate date = LocalDate.of(2022, 1…

Java Gold合格への道 ~日付/時刻API・列挙体~

こんにちは。たろすです。今回は日付/時刻APIで定義されている列挙体について説明します。 曜日 月 おわりに おすすめの学習本 曜日 曜日はDayOfWeekで定義されています。 for (DayOfWeek dayOfWeek : DayOfWeek.values()) { System.out.println(dayOfWeek);…

Java Gold合格への道 ~日付/時刻API・日時の取得~

こんにちは。たろすです。今回は日付/時刻APIの日時の取得について説明します。 日付/時刻の種類 現在の日時を取得 特定の日時を取得 文字列から日付インスタンスを取得 おわりに おすすめの学習本 日付/時刻の種類 時差情報を含まない現地日時をローカルタ…

Java Gold合格への道 ~アサーション~

こんにちは。たろすです。今回はアサーションについて説明します。 アサーションとは 使い方 おわりに おすすめの学習本 アサーションとは アサーションはプラグラムが正しく動作していることを確認するための機能です。以下のように書きます。 assert 条件…

Java Gold合格への道 ~AutoClosableインタフェース~

こんにちは。たろすです。今回はAutoClosableインタフェースについて説明します。 使い方 おわりに おすすめの学習本 使い方 AutoClosableインタフェースはtry-with-resourcesで自動でクローズさせたい場合に実装する必要があります。closeメソッドをオーバ…

Java Gold合格への道 ~multi-catch~

こんにちは。たろすです。今回はmulti-catchについて説明します。 使い方 おわりに おすすめの学習本 使い方 multi-catchは一つのcatchブロックで複数の例外をキャッチする方法です。 public static void main(String[] args) { try { x(); } catch (IOExcep…

Java Gold合格への道 ~例外の再スロー~

こんにちは。たろすです。今回は例外の再スローについて説明します。 例外の再スロー 元の例外の取り出し おわりに おすすめの学習本 例外の再スロー 例外をキャッチした後に再度例外をスローすることができます。その際に引数に元の例外を指定することで、…

Java Gold合格への道 ~StreamAPI・可変リダクション操作~

こんにちは。たろすです。今回はStreamAPIの可変リダクション操作について説明します。 可変リダクション操作とは おわりに おすすめの学習本 可変リダクション操作とは 可変リダクション操作とは、ストリームの要素を可変コンテナに収集する操作をいいます…

Java Gold合格への道 ~StreamAPI・reduce~

こんにちは。たろすです。今回はStreamAPIのreduceについて説明します。 使い方 おわりに おすすめの学習本 使い方 reduceは開発者がリダクション処理をカスタマイズするためのメソッドです。以下のように使用します。 int[] array = { 1, 2, 3 }; IntStream…

Java Gold合格への道 ~StreamAPI・リダクション~

こんにちは。たろすです。今回はStreamAPIのリダクションについて説明します。 リダクションとは count average max min sum おわりに おすすめの学習本 リダクションとは データの集合を要約するような終端操作をリダクションと呼びます。 count ストリーム…

Java Gold合格への道 ~StreamAPI・merge~

こんにちは。たろすです。今回はStreamAPIのmergeについて説明します。 使い方 おわりに おすすめの学習本 使い方 mergeはクセのあるメソッドで、引数のkeyがmapに存在するときとしないときで違う動きをします。メソッドの定義は以下の通りです。 default V …

Java Gold合格への道 ~StreamAPI・distinct~

こんにちは。たろすです。今回はStreamAPIのdistinctについて説明します。 使い方 おわりに おすすめの学習本 使い方 distinctはストリーム内の重複した要素を排除するメソッドです。以下のように使います。 int[] array = { 1, 1, 2, 3, 4, 4, 4, 5, 5, 6 }…

Java Gold合格への道 ~StreamAPI・flatMap~

こんにちは。たろすです。今回はStreamAPIのflatMapについて説明します。 使い方 おわりに おすすめの学習本 使い方 flatMapは入れ子構造のストリームを平坦なストリームに変換するメソッドです。以下のように使います。 List<List<Integer>> list = Arrays.asList(Arrays.</list<integer>…

Java Gold合格への道 ~StreamAPI・findAny、findFirst~

こんにちは。たろすです。今回はStreamAPIのfindAny、findFirstについて説明します。二つとも引数を取らず、Optional型の戻り値を返すメソッドです。それぞれどのような使い方をするのか見ていきましょう。 findAny findFirst おわりに おすすめの学習本 fin…

Java Gold合格への道 ~StreamAPI・anyMatch、allMatch、noneMatch~

こんにちは。たろすです。今回はStreamAPIのanyMatch、allMatch、noneMatchについて説明します。三つともPredicateオブジェクトを引数に取り、boolean型の戻り値を返すメソッドです。それぞれどのような使い方をするのか見ていきましょう。 anyMatch allMatc…

Java Gold合格への道 ~StreamAPI・Streamパイプラインの処理の流れ~

こんにちは。たろすです。今回はStreamパイプラインの処理の流れについて説明します。 処理の流れを可視化 おわりに おすすめの学習本 処理の流れを可視化 次のプログラムはどのような出力をすると思いますか? int[] array = { 1, 2, 3, 4, 5 }; IntStream …

Java Gold合格への道 ~StreamAPI・peek~

こんにちは。たろすです。今回はStreamAPIのpeekの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 peekはStreamオブジェクトをそのまま返すメソッドです。引数に副作用を伴う処理を書くことで、デバッグに使用することができます。以…

Java Gold合格への道 ~StreamAPI・sorted~

こんにちは。たろすです。今回はStreamAPIのsortedの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 sortedはStreamの要素をソートするメソッドです。以下のように使用します。 Arrays.asList(2, 5, 4, 1, 3) .stream() .sorted() .fo…

Java Gold合格への道 ~StreamAPI・map~

こんにちは。たろすです。今回はStreamAPIのmapの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 mapはStreamの要素をマッピング(=データ集合における個々のデータを別のデータに変換した新しいデータ集合を生成)するメソッドです…

Java Gold合格への道 ~StreamAPI・filter~

こんにちは。たろすです。今回はStreamAPIのfilterの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 fileterはStreamの要素をフィルタリング(=必要な要素のみを抽出)するメソッドです。以下のように使用します。 int[] array = { 1…

Java Gold合格への道 ~StreamAPI・ファイル読み込み~

こんにちは。たろすです。今回はjava.io.BufferedReaderとjava.nio.file.Filesのlinesメソッドの使い方について説明します。両者ともファイルから読み込んだ文字列をStreamオブジェクトとして扱うことができます。 使い方 java.io.BufferedReader java.nio.f…

Java Gold合格への道 ~StreamAPI・of~

こんにちは。たろすです。今回はstreamAPIのofの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 ofは任意のオブジェクト集合からStreamオブジェクトを取得する際に使用します。 public class X { public String toString() { return "…

Java Gold合格への道 ~StreamAPI・range~

こんにちは。たろすです。今回はstreamAPIの範囲指定について説明します。 rangeとrangeClosed 使い方 range rangeClosed おわりに おすすめの学習本 rangeとrangeClosed for文で範囲を指定できるように、IntStreamやLongStreamでもforEachで範囲指定したい…

Java Gold合格への道 ~StreamAPI・MapのforEach~

こんにちは。たろすです。今回はMapのforEachについて説明します。 java.util.streamのforEachとの違い おわりに おすすめの学習本 java.util.streamのforEachとの違い java.util.streamのforEachは以下のように定義されています。 void forEach(Consumer ac…

楽天証券がまたまた改悪…今すぐ乗り換えるべき?

こんにちは。たろすです。先日楽天証券の改悪について記事を上げました。talosta.hatenablog.comが、すぐにまた次の改悪を打ち出してきました。今回は改悪の内容の説明と乗り換えるべきかを検討します。 今回の改悪内容 楽天クレカ決済で投資信託を購入した…

Java Gold合格への道 ~StreamAPI・forEach~

こんにちは。たろすです。今回はStreamAPIにおけるforEachの使い方を説明します。 forEachとは 使い方 おわりに おすすめの学習本 forEachとは 名前の通り、streamに対して繰り返し処理を行うメソッドです。 使い方 forEachを使って配列の中身を順番に標準出…