@lifehacker

スポンサーリンク
Java

Java | Java 標準ライブラリ:StackTrace の読み方

StackTrace を一言でいうとStackTrace(スタックトレース)は、「例外が発生したときに、そのときの『呼び出し履歴』を上から順に全部並べたもの」です。どのクラスの、どのメソッドの、どの行...
Java

Java | Java 標準ライブラリ:RuntimeException を使う判断

RuntimeException を一言でいうとRuntimeException は、「“呼び出し側に明示的な例外処理を強制したくはないが、異常はちゃんと知らせたい” ときに使う例外の親クラス」です。...
Java

Java | Java 標準ライブラリ:カスタム例外

カスタム例外を一言でいうと「カスタム例外」は、自分のアプリやライブラリ専用の例外クラスを新しく定義して、エラーの意味を分かりやすく、扱いやすくするためのものです。NullPointerExceptio...
Java

Java | Java 標準ライブラリ:非チェック例外

非チェック例外を一言でいうと「非チェック例外(unchecked exception)」は、“コンパイラが try-catch や throws 宣言を強制してこない例外”かつ“たいていはプログラマー...
Java

Java | Java 標準ライブラリ:チェック例外

チェック例外を一言でいうと「チェック例外(checked exception)」は、“この失敗は普通に起こりうるから、呼び出し側でちゃんと対処を考えろ” とコンパイラが迫ってくる例外です。ファイルがな...
Java

Java | Java 標準ライブラリ:例外階層構造

例外階層構造を一言でいうとJava の「例外階層構造」は、「エラーの種類を、親子関係(クラスの継承)で整理した“族譜”」です。この“族譜”を理解しておくと、どの例外をキャッチすべきかどこで throw...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – デフォルト値の設定

デフォルト値の設定とは何かデフォルト値は「値が未指定(または欠損)のときに使う“代替値”」です。ここが重要です:何を“未指定”とみなすかで手段が変わります。undefined/null だけを未指定と...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – 構造の分解(分割代入)

分割代入(構造の分解)とは何か分割代入は、オブジェクトや配列から「必要な部分だけ」を抜き出して、変数に一気に割り当てる書き方です。ここが重要です:オブジェクトは“キー名で取り出す”、配列は“位置で取り...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – JSON.parse / stringify

JSON とは何かJSON は「データを文字列で表すための軽量フォーマット」です。JavaScript のオブジェクトに“似ている”けれど、JSON はあくまで文字列。送受信・保存に向いており、プログ...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – 浅いコピーと深いコピー

浅いコピーと深いコピーとは何か浅いコピーは「外側のプロパティだけ新しいオブジェクトに複製し、入れ子(オブジェクトや配列)の“参照”はそのまま共有する」コピーです。深いコピーは「入れ子の内部まで再帰的に...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – スプレッド構文によるコピー

スプレッド構文によるコピーとは何かスプレッド構文 { ...obj } は「オブジェクトの“自分が持つ列挙可能なプロパティ”を、浅く(シャロー)コピーして新しいオブジェクトを作る」ための書き方です。こ...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – Object.assign

Object.assign とは何かObject.assign は「右側のオブジェクトの“自前の列挙可能なプロパティ”を左側(ターゲット)へコピーして上書きする」関数です。ここが重要です:コピーされる...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – for…in

for...in とは何かfor...in は「オブジェクトの“列挙可能なキー(プロパティ名)”を1つずつ取り出して処理する」ためのループ構文です。ここが重要です:for...in は“自分のキーだけ...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – Object.entries

Object.entries とは何かObject.entries は「オブジェクトが“自分で持つ”列挙可能な文字列キーとその値の組()」を、配列として返す関数です。ここが重要です:返るのは“自前の・...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – Object.values

Object.values とは何かObject.values は「オブジェクトが“自分で持つ”列挙可能なプロパティの値だけを、配列で返す」関数です。ここが重要です:返るのは“自前の”かつ“enume...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト操作 – Object.keys

Object.keys とは何かObject.keys は「オブジェクトが“自分で持つ”列挙可能なキー(プロパティ名)を、文字列の配列で返す」関数です。ここが重要です:継承(プロトタイプ)上のキーは含...
JavaScript

JavaScript | 1 日 30 分 × 7 日アプリ学習:初級編

この 7 日間・初級編で目指すゴールこの「初級編」では、すでに「超初級」でコンソールでコードを動かす変数、if、関数、配列、ランダム簡単なおみくじアプリあたりを触った人を想定して、もう一歩「アプリ寄り...
Java

Java | Java 標準ライブラリ:NIO と IO の違い

「IO」と「NIO」をざっくり一言でいうとまず一番上のイメージだけ先に置きます。従来の java.io は、「ストリームを通して、データを順番に流す I/O(線でつながったイメージ)」java.nio...
Java

Java | Java 標準ライブラリ:BufferedWriter

BufferedWriter を一言でいうとBufferedWriter は、「文字をいったんバッファ(メモリ)に貯めてから、まとめて出力ストリームに書き込むことで、高速にテキストを書き込むためのクラ...
Java

Java | Java 標準ライブラリ:BufferedReader

BufferedReader を一言でいうとBufferedReader は、「文字をまとめて内部バッファに貯めながら、“行単位で”効率よく読み取るための Reader」です。ファイルやネットワークか...
Java

Java | Java 標準ライブラリ:try-with-resources

try-with-resources を一言でいうとtry-with-resources は、「使い終わったら必ず close() しなきゃいけないものを、自動で確実に閉じてくれる try 文の書き方...
Java

Java | Java 標準ライブラリ:Files.copy

Files.copy を一言でいうとFiles.copy は、「ファイル(またはディレクトリ)の中身を、別の場所にコピーするためのメソッド」です。「あるパスのものを、別のパスへコピーしたい」「入力スト...
Java

Java | Java 標準ライブラリ:Files.lines

Files.lines を一言でいうとFiles.lines は、「テキストファイルを 1 行ずつ“ストリームとして”読み出すためのメソッド」です。Files.readAllLines が「全部いっぺ...
Java

Java | Java 標準ライブラリ:Files.readAllLines

Files.readAllLines を一言でいうとFiles.readAllLines は、「テキストファイルを“まるごと読み込んで”、1行ずつ List<String> にして返してくれるメソッド...
Java

Java | Java 標準ライブラリ:Path / Paths

Path / Paths をざっくり一言でいうとPath は、「ファイルやディレクトリまでの“道順(パス)”を表すオブジェクト」です。Paths は、「Path を作るための “工場(ファクトリ)クラ...
Java

Java | Java 標準ライブラリ:File クラス

File クラスをざっくり一言でいうとjava.io.File は、「ディスク上の “ファイル or ディレクトリ” を指し示すための “住所カード”」です。ここがとても大事で、File 自体は「中身...
Java

Java | Java 標準ライブラリ:ファイル入出力概要

Java のファイル入出力をざっくり一言でいうとJava の「ファイル入出力(I/O)」は、「ディスク上のファイルに、プログラムから文字やバイトを読み書きするための仕組み」です。初心者のうちに、まず次...
Java

Java | Java 標準ライブラリ:Period と Duration

Period と Duration をざっくり一言でいうとPeriod と Duration は、どちらも「時間の長さ」を表すクラスですが、何を基準にしているかがまったく違います。Period … 年...
Java

Java | Java 標準ライブラリ:DateTimeFormatter

DateTimeFormatter をざっくり一言でいうとDateTimeFormatter は、「LocalDate / LocalTime / LocalDateTime / ZonedDateT...
Java

Java | Java 標準ライブラリ:ZonedDateTime

ZonedDateTime をざっくり一言でいうとZonedDateTime は、「日付(年・月・日)+時刻(時・分・秒)+タイムゾーン」をまとめて表現するクラスです。LocalDateTime が「...
Java

Java | Java 標準ライブラリ:LocalDateTime

LocalDateTime をざっくり一言でいうとLocalDateTime は、「日付(年・月・日)+時刻(時・分・秒)」を、タイムゾーンなしで表すクラスです。LocalDate が「日付だけ」Lo...
Java

Java | Java 標準ライブラリ:LocalTime

LocalTime をざっくり一言でいうとLocalTime は、「日付もタイムゾーンもいらない、“純粋な時刻(時・分・秒だけ)”」を表すクラスです。朝 9 時に開店、12 時に休憩開始、18 時に閉...
JavaScript

JavaScript | 1 日 30 分 × 7 日アプリ学習:超初級編

この 7 日間で目指すゴールこの「超初級編」では、たった 7 日 × 1 日 30 分で「自分の手で動くミニアプリ」を作れるところまで行きます。難しい理論は一旦置いておき、次の三つだけを大事にします。...
Java

Java | Java 標準ライブラリ:LocalDate

LocalDate をざっくり一言でいうとLocalDate は、「タイムゾーンも時刻も持たない、“純粋な日付(年・月・日だけ)”」をあつかうためのクラスです。誕生日、締切日、営業日、請求日など、「そ...
Java

Java | Java 標準ライブラリ:Date の問題点

なぜ「Date の問題点」を知っておくべきかJava の古い日付・時刻 API(java.util.Date / java.util.Calendar)は、長年「バグを生みやすい」「直感とズレている」...
Java

Java | Java 標準ライブラリ:parallelStream の注意点

parallelStream を一言でいうと何かparallelStream() は、「Stream の処理を、CPU の複数コアを使って“自動で並列実行してくれるモード”」です。list.strea...
Java

Java | Java 標準ライブラリ:Stream の再利用不可性

Stream が「再利用できない」ってどういうことかまず結論から言うと、Java の Stream は「一度“流して”終端操作を呼んだら、そのストリームは二度と使えない(使い捨て)」という性質を持って...
Java

Java | Java 標準ライブラリ:Stream の遅延評価

「遅延評価」をざっくりイメージするまず感覚から固めます。Stream の「遅延評価(lazy evaluation)」とは、「stream().filter().map() と“パイプラインを組み立て...
Java

Java | Java 標準ライブラリ:Optional と Stream の併用

なぜ「Optional と Stream の併用」が話題になるのかOptional と Stream、どちらも「null を避けつつ、宣言的に書く」ための道具です。でも実務でコードを書き始めると、こう...
Java

Java | Java 標準ライブラリ:joining

joining をざっくり一言でいうとCollectors.joining は、「Stream の中の文字列たちを、1 本の文字列に“つなげて”まとめるための Collector」です。collect...
Java

Java | Java 標準ライブラリ:groupingBy

groupingBy をざっくり一言でいうとCollectors.groupingBy は、「Stream の要素を、ある“キー”ごとにグループ分けして Map にまとめる ための仕組み」です。イメー...
Java

Java | Java 標準ライブラリ:Collectors.toList

Collectors.toList をざっくり一言でいうとCollectors.toList() は、「Stream の結果を List に集め直すための“まとめ方テンプレ”」です。stream()....
Java

Java | Java 標準ライブラリ:collect

collect の役割をざっくりイメージするStream の collect は一言でいうと、「ストリームの“流れ”を、最終的な入れ物や形(List・Set・Map・1つの値など)にまとめる操作」です...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – hasOwnProperty

hasOwnProperty とは何かhasOwnProperty は「そのオブジェクト“自身”が、指定したキー(プロパティ)を持っているか」を真偽値で返すメソッドです。ここが重要です:“継承(プロト...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – in 演算子

in 演算子とは何かin 演算子は「そのキー(プロパティ名)が、オブジェクト“自身またはプロトタイプ上”に存在するか」を真偽値で返す演算子です。ここが重要です:in は「値があるか」ではなく「キーが存...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – プロパティ削除

プロパティ削除とは何かオブジェクトから「特定のキー(プロパティ)とその値」を取り除くことです。ここが重要です:削除は“存在そのもの”を消します。値を undefined や null にするのは“値を...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – プロパティ追加

プロパティ追加とは何かオブジェクトに“新しいキー(プロパティ名)と値”を後から足すことです。ここが重要です:追加の基本は「ドット記法(静的キー)」と「ブラケット記法(動的キー)」の使い分け。さらに、オ...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – 動的キー

動的キーとは何か動的キーは「キー名をその場で計算・選択して使う」ための仕組みです。文字列を組み立てたり、変数の値をキーにしたり、日本語や記号・スペースを含むキーにアクセスしたりできます。ここが重要です...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – ブラケット記法

ブラケット記法とは何かブラケット記法は obj の形で、オブジェクトのプロパティへアクセス・追加・更新・削除する書き方です。ここが重要です:キーを“文字列として動的”に扱えるため、変数でキー名を決めた...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – ドット記法

ドット記法とは何かドット記法は、オブジェクトのプロパティ(キー)に「.」でアクセスする最も読みやすい書き方です。配列が順番で取り出すのに対し、オブジェクトは“名前で取り出す”ため、ドット記法は直感的で...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – プロパティと値

プロパティと値とは何かオブジェクトは「キー(プロパティ名)と値」のペアを集めた入れ物です。キーは通常“文字列”か“シンボル”、値は数値・文字列・真偽値・配列・別オブジェクト・関数など何でも入れられます...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – オブジェクトリテラル

オブジェクトリテラルとは何かオブジェクトリテラルは { ... } を使って「キー(名前): 値」をまとめて書く最も基本的な方法です。設定、データレコード、メッセージ、座標など“ラベル付きの情報”をひ...
JavaScript

JavaScript | 配列・オブジェクト:オブジェクト基礎 – オブジェクトとは

オブジェクトとは何かオブジェクトは「名前(キー)と値(バリュー)の組み合わせ」を入れる“入れ物”です。実世界の「人」「商品」「設定」などを、その属性として表現します。ここが重要です:キーは文字列(やシ...
Java

Java | Java 標準ライブラリ:flatMap

flatMap をざっくりイメージするまず、一番大事な感覚から。map は「1つの要素 → 1つの値」に変換する操作でした。flatMap は「1つの要素 → 0個以上の“複数要素”」に変換して、最後...
Java

Java | Java 標準ライブラリ:filter 操作

filter 操作をざっくりイメージするStream の filter は、一言でいうと「流れてくる要素の中から、条件に合うものだけを通し、合わないものを捨てる 操作」です。大事なポイントはこの 3 ...
Java

Java | Java 標準ライブラリ:map 操作

「map 操作」をざっくりイメージするStream の map は、一言でいうと「流れてくる要素を、別の値に変換して流し直す 操作」です。元の要素数は変えない1 個入ったら、必ず 1 個出てくる「中身...
Java

Java | Java 標準ライブラリ:Stream の生成

「Stream の生成」をざっくりイメージするStream API の最初の一歩は、「そもそも Stream をどうやって作るか」です。filter や map は、その前に「Stream がある」こ...
Java

Java | Java 標準ライブラリ:Stream API 概要

Stream API をざっくりイメージするまず感覚から先に。Stream API は、「配列やコレクションなど“データの列”に対して、 “何をしたいか”を宣言的に書けるパイプライン」です。for 文...
Java

Java | Java 標準ライブラリ:Collections.unmodifiableList

Collections.unmodifiableList の役割をざっくりつかむCollections.unmodifiableList は、「この List、“見たり読むのはいいけど、書き換えは禁止...
Java

Java | Java 標準ライブラリ:Collections.sort

Collections.sort の役割をざっくりつかむCollections.sort は、「List の中身を並び替えるための標準メソッド」です。配列には Arrays.sort がありましたよね...
スポンサーリンク