【JAVA入門】配列学習とグラフ表示01

Javaでの配列の扱い方について学びました。

学んでいてちょっとビックリだったのが配列の定義の仕方です。

僕は普段配列を指定する時に以下のように定義しています。


int[] a;

どうやら以下のように定義しても大丈夫なようです。


int a[];

なんか慣れていないせいかすごく違和感がありますがOKだそうで。
ただ大多数は int[] a; の方を好んで使っているようですね。

配列を使ってグラフを作ってみる

という訳で入門書あるある?グラフ表示のプログラムです。

作るグラフ数をキーボードから入力しその数分乱数を生成してその数分だけ『*』を表示させるっていう流れです。

また最後には乱数で出力した値を10で割ったときの余剰(余り)を表示しています。

このプログラムで重要な事は配列の長さを取得するには 配列名.length で取得出来ること。

グラフで言う所の左上から右に処理が行われるので処理にはfor文の中に更にfor文が入るところが理解しづらいところかもしれません。


public class IntArrayRand {
	public static void main(String args[]){
		Random rand = new Random();
		Scanner std = new Scanner(System.in);

		System.out.print("要素数?:");
		int n = std.nextInt();

		//配列を生成
		int[] a = new int[n];

		for(int i = 0; i < a.length; i++){
			//配列に適当な値を代入
			a[i] = rand.nextInt(10);
		}

		//縦型
		for(int i = 10; i > 0; i--){
			for(int j = 0; j < n; j++){
				if(a[j] >= i){
					//マーク
					System.out.print('*');
				}else{
					System.out.print(' ');
				}
				// 行間の空白
				if(j < n - 1){
					System.out.print(' ');
				}
			}
			System.out.println();
		}
		for(int i = 0; i < n; i++){
			System.out.print("-");
			// 行間の空白
			if(i < n - 1){
				System.out.print('-');
			}
		}
		System.out.println();

		for(int i = 0; i < a.length; i++){
			System.out.print(i % 10);
			// 行間の空白
			if(i < n - 1){
				System.out.print(' ');
			}
		}
	}
}
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク