javaとは?初心者向けはじめてのjava入門

Java

(アイキャッチ画像出典:https://pixabay.com/ja/vectors/%e3%82%ab%e3%83%83%e3%83%97-%e3%83%9e%e3%82%b0-%e3%82%b3%e3%83%bc%e3%83%92%e3%83%bc-303661/)

javaとはプログラミング言語の一種で優れた移植性によって広い業界で使わています。Webサービス開発、Webアプリ開発、Androidアプリ開発、IoT開発など様々なソフトウェア開発に使わています。この記事ではその優れた移植性、開発のための環境構築、書き方を説明する簡単なプログラムなどを紹介します。きっとJavaに興味を持つ初心者の方にお役に立ちます。

Java優れた移植性とは?

java
(画像出典:https://www.photo-ac.com/main/detail/24538548)

優れた移植性は良くJavaの特徴と言われます。移植性とは異なる環境でもプログラムを再利用できるということを指します。例えばWindowsで作成したプログラムをUNIX上に移して、実行できるようになります。

なぜJavaはそれをできるのがを言うとコンパイル時にはJava VMというJavaの実行環境で実行可能な機械語になっています。このJava VMというのは各種のプラットフォーム(UNIX/LINUX/Macintosh/Windows)用に準備されています。Java VMが各種のプラットフォームの命令セットの差を埋めたこととなります。

一方、従来のC言語やVisual Basicなどで作成されたプログラムなどは、プラットフォームごと実行可能な機械語としてコンパイルされます。この場合はUNIXで作成したプログラムがWindowsで命令セットが異なっているため実行できない可能性があります。したがって、移植性に優れていません。

Javaの開発環境を構築

以前Javaの開発環境を構築する記事を書きました。こちらを参考してください。

参考記事はVSCodeを使う構築となります。
OS環境Windows 11 Pro
エディタVS Code
JDKJava SE Development Kit 17
開発環境一覧
胡彬
胡彬

OS環境はそれほど重要ではないため、LinuxやMac OSでも大丈夫です。その他部分は参考記事従って進みましょう。

VSCodeを使うJavaオブジェクト作成

Visual Studio Code のプラグイン Extension Pack for Javaをインストールした後に以下の通りJavaオブジェクトを作成できます。ステップバイステップで説明します。

「コマンド パレット」を表示

Visual Studio Code を起動し、 「表示」メニューの「コマンドパレット」を選択或いはCtrl+Shift+Pコマンド パレットを呼び出す。

表示メニューの1つ目

「Java:Create Java Project」を実行

コマンドパレットに「java」と入力すると候補として表示される 「Java:Create Java Project」をクリックします。

Javaオブジェクトを作成

作成するJavaオブジェクトの「種類」を選択

用途に応じてオブジェクトの種類を使い分けます。今回は簡単なプログラム作成なので「No build tools」をクリックします。

No build toolsをクリック

プロジェクトを格納する親フォルダを指定

 位置が分かるフォルダを指定します。 プロジェクトを格納するフォルダは、ここに新しく作成されます。

プロジェクトを格納するフォルダ

フォルダ選択した後にプロジェクト名を決めましょう。私の場合は「MyJava」と決めました。

プロジェクト名「MyJava」

はい、作成者を信頼します」をクリックします。

「はい、作成者を信頼します」をクリック

これで「Javaプロジェクト」作成完了しました。

自動的に作成されるJavaファイル

javaファイルを実行してみよう。

右クリック「Run Java」を選択
文字列が表示された

簡単なJavaプログラム作成

この記事では入門知識に当たる簡単なソースコードを紹介します。

 文字列を表示してみよう

src」を右クリックし 「新しいファイル」を選択した後、作成するファイルの名前を入力します。

右クリックし 「新しいファイル」

今回は名前を「HelloWorld.java」とします。

HelloWorld.java

「”Hello, World!”」と表示するように簡単なソースコードを書きましょう。mainメソッドを書いてその中にSystem.out.println();を書き込みましょう。

HelloWorld.java
public class HelloWorld {

    public static void main(String[] args) throws Exception {

        System.out.println("Hello, World!");

    }

}

プログラム実行してターミナルで結果を確かめましょう。

無事に実行しました。

System.out.println();文字列を表示するコード、()の内容は文字列となりますので覚えてください。

ポイント
  • mainメソッド
  • System.out.println()

変数を使ってみよう

変数とは値に名前を付けて管理できる仕組みのこと、例えば同じ値を繰り返し使用する場合は変数を使いましょう。

Javaにおいて変数を使うにはまずそれを扱う値の種類を書くこれを宣言と言います。文字列を扱うにはStringを使います。変数は色々種類ありますけど今回は入門紹介なので他の記事で詳しく説明します。

変数型Stringの後に変数名を付けます、今回はnameとしましょう。=を加えて値(”World”)を付けましょう。変数に値を割り当てることを変数に値を代入と言います。文字列と変数を組み合わせするには+を使いましょう。

HelloWorld.java
public class HelloWorld {

    public static void main(String[] args) throws Exception {

        String name="World";

        System.out.println("Hello "+name);

        System.out.println("Hello "+name+" again!");

    }

}

ソースコード書き終わったら実行してみましょう。

無事に実行できました。

複数使用する値は変数を使うと便利になるので変更したい場合も代入値だけ変更すればいい、積極的に使いましょう。

point
  • 変数の使い方
  • 変数と文字列の結合
  • 動作確認

入力を受け取る

ここから入力受け取るソースコードを書きます。色んな方法ありますけど今回はScannerを使います。Scannerを使うにはまず、はじめにimport命令を使いライブラリから実装します。

import java.util.Scanner;Scannerを呼び出すのもいいですが、機能一つずつ指定せず*で全部実装することができます。new Scanner(System.in).next();を変数nameに代入しましょう。

HelloWorld.java
import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        System.out.println("What's your name");

        String name=new Scanner(System.in).next();

        System.out.println("Hello "+name);

        System.out.println("Hello "+name+" again!");

    }

}

ソースコードを書き終わったら実行して確かめましょう。実行したら名前を入力しEnterを押しましょう。

名前を入力

入力した名前が表示されました。

実行結果

文字列型のデータの入力値を受け取る方法を紹介しました。今から整数型のデータを受け取る方法を紹介します。

Integer型の変数に値を代入できるように.next()ではなく.nextInt()を使いましょう。入力した値を色んな計算してみましょう。

HelloWorld.java
import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        System.out.println("Enter your num");

        Integer name=new Scanner(System.in).nextInt();

        System.out.println(name+"+1="+(name+1));

        System.out.println(name+"-1="+(name-1));

        System.out.println(name+"/1="+(name/1));

        System.out.println(name+"*1="+(name*1));

    }

}

実行して確かめましょう。まず、任意の数を入力してください

数字入力してEnterを押しましょう。

実行結果

以上が今回のScannerを使う入力を受け取るプログラムとなります。

point
  • import
  • Scanner

条件に応じて表示を変えてみよう

さてここから条件を加えて入力値に対して違う表示するプログラムを作成する。今回はif elseの判断式で表示する内容を分岐するプログラムを作成する。

HelloWorld.java
import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        System.out.println("Enter your num");

        Integer num=new Scanner(System.in).nextInt();

        if(num>0){

            System.out.println("正数である");

        }else{

            System.out.println("正数ではない");

        }

    }

}

実行して数字入力して確かめましょう。

入力しましょう

条件if(num>0)に合う場合は以下内容を表示する

if分岐に合う場合の表示

それ以外の場合で表示する内容

else分岐になる場合

以上がif elseの判断式の使い方でした。分岐条件を一つ以上の場合if … else if … else …判断を使います。

HelloWorld.java
import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        System.out.println("Enter your num");

        Integer num=new Scanner(System.in).nextInt();

        if(num>0){

            System.out.println("正数である");

        }else if(num==0){

            System.out.println("正数ではない");

        }else{

            System.out.println("負数である");

        }

    }

}

実行して確かめましょう。

入力した値が if(num>0)に合う場合

入力した値がelse if(num==0)に合う場合

それ以外の値を入力した場合

point
  • else if
  • if … else if … else …
  • 動作確認

乱数を生成してみよう

ここから答え乱数の数字当てプログラムを作成します。今回はRandom()を使います。

.nextInt(10)と指定すれば0-9までの数字がランダムに生成される、今回は1-10まで生成したいので+1を加えます。

HelloWorld.java

import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        Integer answer = new Random().nextInt(10) + 1;

        System.out.print("Your guess? ");

        Integer guess = new Scanner(System.in).nextInt();

        if (answer == guess) {

            System.out.println("Bingo!");

        } else if (answer > guess ) {

            System.out.println("The answer is higher!");

        } else {

            System.out.println("The answer is lower!");

        }

        System.out.println("The answer is " + answer);

        }

}

実行して確かめましょう。

当てた場合
答えより高い場合
答えより低い場合
point
  • Random
  • 動作確認

 ループ処理を使ってみよう

最後にランダムに数を生成するこのプログラムに対してループを加えて当てるまで質問を続く処理にする。while文を使って実現してみましょう。

HelloWorld.java
import java.util.*;

public class HelloWorld {

    public static void main(String[] args) throws Exception {

        Integer answer = new Random().nextInt(10) + 1;

        while (true) {

          System.out.print("Your guess? ");

          Integer guess = new Scanner(System.in).nextInt();

          if (answer == guess) {

            System.out.println("Bingo!");

            break;

          } else if (answer > guess ) {

            System.out.println("The answer is higher!");

          } else {

            System.out.println("The answer is lower!");

          }

        }

    }

}

入力値と生成値一致する場合がbreak処理行いループを処理する。

実行して確かめましょう。

while文実行結果

無事に実行しました。

point
  • while文
  • break文

初心者向けはじめてのjava入門まとめ

前回の記事ではvscodeを使うJava開発の下準備をしました。この記事ではJava入門紹介としてプログラミング言語としての特徴や簡単なソースコードを紹介しました。Java のプログラムではさまざまな下準備が必要だったり、整数や文字列など値の種類を強く意識することが求められます。これからJavaの基本的な機能を実現するソースコードを一つずつ紹介しますので次回の記事もよろしくお願いします。

コメント

タイトルとURLをコピーしました