Javaの基本的な文法とその応用

Javaで作成できるプログラムの種類

Javaは多様な種類のアプリケーションを開発することができます。

  • デスクトップアプリケーション
    • OpenOffice: ドキュメント編集、スプレッドシート処理、プレゼンテーションなどを行うオフィススイート。
    • Minecraft: 自由度の高いサンドボックスゲーム。
  • モバイルアプリケーション
    • Android: 多くのAndroidアプリがJavaで開発されています。
    • iOS: 関連ツールを使用してiOS向けアプリケーションをJavaで開発することも可能です。

"Write Once, Run Anywhere"の理解

Javaの最大の利点の一つは、「一度書いたコードはどこでも実行できる」ことです。つまり、Javaのコードは一度書き、Java仮想マシン(JVM)がインストールされている任意のプラットフォームで動作します。そのため、異なるプラットフォームごとにコードを修正または再コンパイルする必要はありません。

Javaプログラムを実行するには、対応するJavaランタイム環境(JRE)を操作システムにインストールする必要があります。

C言語とJavaのHelloWorldコードの比較

以下はそれぞれの言語でのHelloWorldコードです。

  1. C言語
    
    #include <stdio.h>
    int main() {
        printf("Hello World!");
        return 0;
    }
      
  2. Java
    
    public class HelloWorld {
        public static void main(String[] args) {
            System.out.println("Hello world!");
        }
    }
      

主な違いは以下の通りです:

  • C言語: ファイル拡張子は.c。main関数がプログラムのエントリーポイント。printf関数でテキスト出力。
  • Java: ファイル拡張子は.java。publicクラス名とファイル名が一致。mainメソッドがエントリーポイント。System.out.printlnでテキスト出力。

文字列の比較方法

文字列の内容を比較するには、equals() メソッドを使用します。例えば、2つの文字列 a と b を比較する場合、a.equals(b) で比較できます。

基本データ型では直接 == を使用できますが、参照データ型では == は同一オブジェクトかどうかを判定するため、値の比較には適していません。

コードの解析


String x = null;
int length = x.length();
System.out.println("x.length = " + length + ", content = " + x.trim());

このコードは、nullの文字列xの長さを取得し、前後の空白を削除して内容を表示しようとしています。しかし、x が null なので、x.length() はNullPointerExceptionを投げ、コードは実行できません。

trim() メソッドの詳細については、Java公式ドキュメントやオンラインリソースを参照してください。

コードの読み解き


Integer x = Integer.valueOf("10");
Integer y = x + 1;
int z = x + y;

説明:

  • Integer y = x + 1: x はIntegerオブジェクトで、1はint型。Javaは自動的に x.intValue() を呼び出して x をintに変換し、加算を行います。
  • int z = x + y: xy は自動的にアンボックスされ、intとして加算されます。

タグ: Java JVM 文字列比較 NullPointerException オートボックス

5月19日 09:10 投稿