コツコツ学習ブログ

プログラマのweb上のメモ的なもの

2021-08-07から1日間の記事一覧

コンパレータ(sort)

コンパレータとは 現実世界における「並び替えのルール(2つのインスタンスに関する大小の比較方法)」を クラスとして表現したもの java.util.Comparatorインタフェースを実装しCompareTo()をオーバーライドして定義する //Main.java import java.util.ArrayL…

Collectionクラスのsort

自然順序づけとは あるクラスについて一般的に想定される並べ順のこと java.lang.Comparable あるクラスを開発する際に、そのクラスの自然順序を宣言するための インタフェース。 このインタフェースを実装するとcompareTo()が強制され、 自然順序づけの方法…

配列の等価判定

import java.util.Arrays; public class Main { public static void main(String[] args) { int[] a = { 1, 2, 3, 4, 5 }; int[] b = { 1, 2, 3, 4, 5 }; //objectクラスを継承した等値判定となりfalse System.out.println("誤った判定:" + a.equals(b)); /…

equals()のオーバーライド

等値と等価(おさらい) 等値(==) 同じアドレスを指していることを判定 等価(equals) 2つのものが同じ内容であること equals()のオーバーライド これを行わないと、予期せぬ不具合が発生する可能性があるため クラスを作成したら必ずオーバーライドを行う publ…

toString()のオーバーライド

toString()のオーバーライド 新しいクラスを開発した時、toString()をオーバーライドしておくことで 開発者が意図した文字列を渡すことができる。 オーバーライドしないと、@32a1bec0のような 人間に解読できない文字列になってしまう。 //Main.java public …

Javaにおける例外処理の基本

例外クラス APIには、様々な例外的状況を表す例外クラスが用意されている 例外クラスを継承してオリジナルの例外クラスを定義できる 例外の種類 Error系 java.lang.Errorの子孫、回復の見込みがない致命的な状況を表すクラス (例) OutOfmemoryError(メモリ不…