KENスクールブログ | パソコン教室・パソコン講座なら個別指導のKENスクール

BLOGKENスクールブログ

  1. KENスクール TOP >
  2. KENスクールブログ > プログラム > 比較方法の違い PHP、JAVA

プログラム

比較方法の違い PHP、JAVA

KENスクールの動画配信サービス「KEN×ONLINE」

概要

プログラムでは文字や数値の比較を行うことがあるかと思います。そこで今回は比較方法について言語ごとの違いや、言語内での違いについて説明をします。

PHPでの比較

==と===の違い

  • == 値が等しい時にtrue
  • === 値と型が等しい時にtrue
コード例

実行結果

変数aは数値、変数bは文字列として扱われているので===での比較の場合はfalse、==での比較の場合はtrueになります。
変数aとcは数値として扱われているので===と==のどちらの比較でもtrueになります。

JAVAでの比較

==とequalsメソッドの違い

  • == 同じオブジェクトの時にtrue
  • equals 同じ文字列の時にtrue
コード例

実行結果

まず文字列の比較の違いの前にStringオブジェクトの生成方法の違いを確認します。

new 演算子を使用してStringオブジェクトを生成した場合は、その都度新しいオブジェクトが作成されます。new演算子を使用しないでStringオブジェクトを生成した場合はすでにStringオブジェクトが存在すればそれを参照し、なければ新規に生成されます。
str3とstr4は同じオブジェクトを参照しています。

次は==とequalsメソッドとの違いを確認します。
==と同じオブジェクトかどうかを比較します。str3とstr4を比較したときのみtrueになります。
equalsメソッドは同じ文字列かどうかを比較します。str1,str2,str3,str4のどれを比較しても同じ文字列なのでtrueになります。

言語ごとも言語内でも比較方法によって違いがあるので比較をする際は何を比較したいのかを考えて比較方法をどれにするのか検討してみてください。

Javaベーシック講座

Androidアプリも、Webアプリもまずはここから

詳しくはこちら