このシリーズ記事ではJavaについての個人備忘録を記載する。
初めに: Javaとは?
Javaとはオブジェクト指向言語の中で最も有名なプログラミング言語の一つである。Sun Microsystems(現Oracle)のジェームズ・ゴスリン氏などを中心に開発され、1995年に発表された。Javaはプラットフォーム非依存を目標としてJVMという仮想マシン上で動作する。利用場面はデスクトップアプリや業務システム、Webサービス、Androidアプリ開発など様々である。
JavaでFizzBuzzを書いてみる
FizzBuzzはプログラミング初心者用としてお馴染みの問題である。1から順に数を数え上げていき、3の倍数なら「Fizz」、5の倍数なら「Buzz」、両方の倍数(15の倍数)なら「Fizz Buzz」、いずれでもなければその数を返すプログラムである。基本的な加減乗除方法やif文やfor文、結果出力方法の書き方を学べるので、新しく言語を学ぶときに最初の題材として書いてみると良いだろう。
また、Javaの場合、クラス、インスタンス、メンバ変数、コンストラクタ、といった概念も登場する。こちらもあわせて覚えていこう。なお、以下の定義はかなり端折っていることに注意。
クラス: オブジェクトの設計図
インスタンス: クラス定義に基づいて生成されるオブジェクト
メンバ変数: 個々のインスタンスごとに保有する固有の変数。
コンストラクタ: オブジェクト生成時に呼び出されて内容の初期化などを行うメソッド
public class FizzBuzz {
//メンバ変数
private int max;
//コンストラクタ
public FizzBuzz(int max) {
this.max = max;
}
//runメソッド
public void run() {
for(int i = 1; i <= this.max; i++) {
printNum(i);
}
}
//FizzBuzz処理
public void printNum(int i) {
if(i % 3 == 0 && i % 5 == 0) {
System.out.println("FizzBuzz");
}else if(i % 3 == 0) {
System.out.println("Fizz");
}else if(i % 5 == 0) {
System.out.println("Buzz");
}else{
System.out.println(i);
}
}
//メイン関数
public static void main(String[] args) {
//インスタンス生成
FizzBuzz obj = new FizzBuzz(100);
obj.run();
}
}