実技(Javaプログラミング実習2)16

Java(2重for文九九表作成)


1.九九表作成(2重for)
2.九九アプリ作成
3.九九アプリ解説
4.配列復習(バブルソート)
5.メソッド復習

import java.util.Arrays;
import java.util.Random;

public class Test {

	public static void main(String[] args) {
		int[] data = new int[5];
		Random rand = new Random();
		for (int i = 0; i < data.length; i++) {
			data[i] = rand.nextInt(101);
		}
		System.out.println(Arrays.toString(data));
		Arrays.sort(data);
		System.out.println(Arrays.toString(data));
		arraySortDesc(data);
		System.out.println(printArray(data));
		

	}
	//int型の配列を降順に並び替えるメソッド(バブルソート)
	static void arraySortDesc(int[] arr) {
		//基準点は0~最後から1個手前まで
		for (int i = 0; i < arr.length - 1; i++) {
			//比較対象の位置は基準点の1個右隣りから最後まで
			for (int j = i + 1; j < arr.length; j++) {
				//基準点の値と比較対象の値を比べて矛盾があったら
				if (arr[i] < arr[j]) {
					//2値の入れ替え
					int temp = arr[i];
					arr[i] = arr[j];
					arr[j] = temp;
				}
			}
		}
	}
	//Arrays.toStringの機能を自作
	static String printArray(int[] arr) {
		String str="[";
		for(int i=0;i<arr.length;i++) {
			str+=arr[i];
			if(i!=arr.length-1) {
				str+=",";
			}
		}
		str+="]";
		return str;
	}


}

●Dogクラス


public class Dog {
	private String name;
	private int age;
	private static int count;
	
	public Dog() {
		Dog.count++;
	}
	public Dog(String name) {
		this();
		this.name=name;
	}
	public Dog(String name,int age) {
		this(name);
		this.age=age;
	}
	public String getName() {
		return this.name;
	}
	public void setName(String name) {
		this.name=name;
	}
	public int getAge() {
		return this.age;
	}
	public void setAge(int age) {
		if(age<0) {
			age=0;
		}
		this.age=age;
	}
	public void showInfo() {
		System.out.printf("名前:%s,年齢:%d%n", this.name,this.age);
	}
	public static int getCount() {
		return Dog.count;
	}
}