2011年9月2日金曜日

Java入門②

前回の
public class Main {
	public static void main(String[] args) {
		System.out.println("HelloJava");
	}
}
について少し解説

趣旨が「Javaでゲームを作ってJavaとオブジェクト指向に慣れよう!」なので、深くは解説しません。


public static void main(String[] args){ }
はC言語で言う所の int main(void){ }だと思ってください。
ここからメインが始まります。


System.out.println("HelloJava");
はC言語でいうと printf("Hello World \n");
です。いわゆる標準出力で、printlnは標準で改行付きです。変数等を表示する際のサンプルは以下のようになります。
public class Main {
	public static void main(String[] args) {
		int num = 2;
		System.out.println("数字の中身は" + num + "です。");
	}
}

これを実行すると

数字の中身は2です。
と表示され、だいぶ直感的になっています。
他の標準出力として、printlnから自動改行しなようになっているSystem.out.printやCのprintfと同じように使えるSystem.out.printfなどたくさんあります。

またEclipseの便利な機能に自動補完があり、
sysoと入力しCtrl+Spaceを打つとSystem.out.printlnが入力されます。
同じようにmainと打ってからCtrl+Spaceでpublic static void main(String[] args) {}が入力されます。
よく使う物や標準関数の候補を探す際に非常に便利です。

たとえば、System.outと打ってからCtrl+Spaceを押すと

こんなふうにSystem.outのあとに続く関数が大量に出てきます。
しかもManual付きで。


次にEclipseのオートフィックスを見てみましょう
int x = 3
のように打ち、セミコロンをつけるのを忘れてしまった。そんな時!
  1. ソースコードのファイルに赤い×マークが付き文法エラーがあることを警告してくれる!
  2. 波線でおかしい部分を指摘
  3. マウスオーバーで修正候補を教えてくれる

という親切設計。




Cと文法自体はかなり似ている。
以下のコードを見て欲しい。
public class Main {
	public static void main(String[] args) {
		int x = 3;
		int i,j;
		float f;
		double g;
		char c;
		String s;

		//if else
		if(x > 2){
			System.out.println("xは2より大きい");
		}else{
			System.out.println("xは2より小さい");
		}

		//for
		for(i = 0;i <5;i++){
			System.out.println(i);
		}

		j = 5;
		//While
		while(j>0){
			System.out.println(j);
			j--;
		}

		/*Switch Case*/
		switch(j){
			case 0:
				System.out.println("TEST");
				break;
			case 1:
				System.out.println("NULLPO");
				break;
			default:
		}
	}
}

int float double char stringと言った型や、if else for while switch caseに至るまで、C言語と同じ文法です。

配列の宣言や構造体の扱いなどの違いはありますが、先ほどのような自動補完・マニュアル・自動修正などの補助があればJavaの文法を知らずともコードがかけるとことは分かったでしょうか?

0 件のコメント:

コメントを投稿