Javaのお勉強その2
- 演算子
&&と&の違いは、&&は左オペランドがfalseなら右オペランドは評価しないのに対し、&は必ず左右のオペランドを評価しているという点である。||と|の違いも同様。
-5%-3は5%3=2(-を取り除いて余りを計算する)としたあとに左オペランドの符号をつける。したがって-5%-3=-2になる。
整数同士の割り算は整数になる。小数点以下は切り捨てられる。例えば、6/4=1になる。
0で割る、または0で剰余を計算するとArithmeticExceptionがスローされる。
instanceof演算子はオブジェクトがあるオブジェクトが特定のクラスを含んでいるか判定するのに用いられる。a instanceof bと書けば、aがbにキャストできるか否か判定すると言ってもよい。
- リテラル
long値には数字の後ろにLまたはlを付ける。
実数をfloatとして扱いたい場合は数字の後ろにFまたはfをつける。
文字リテラルは、''で囲う。'\uに続けて4桁の16進数を書き込む。'\n'(改行の値)という書き方もアリ。
文字列リテラルは、Stringオブジェクトである。同じ文字列のリテラルがあったとすれば、それらは同じStringオブジェクトになる。
- ==とequalsの違い
==は同じオブジェクトか否かを判定する。equalsはオブジェクトの中身(値)が等しいか否かを判定している。
Objectクラスでは==とequalsメソッドに違いはないが、Stringクラスではequalメソッドがオーバーライドされているため、意味が異なる。Stringクラスのequalメソッドは文字列として単に等しいかを判定している。オブジェクトが等しいかまでは見ていない。
0 件のコメント:
コメントを投稿