class ComparableApp {
	public static void main(String [] args) {
		Name [] names = {
			new Name("Weiss", "Gerald"),
			new Name("Arnow", "David"),
			new Name("Sokol", "Dina")
		};

		sort(names);
		System.out.println(toString(names));
	
		Person[] persons = {
			new Person(2001, 25, new Name("Weiss", "Gerald")),
			new Person(1000, 30, new Name("Arnow", "David")),
			new Person(1500, 20, new Name("Sokol", "Dina"))
		};

		sort(persons);
		System.out.println(toString(persons));

	}

	static void sort(Comparable [] arr) {
		for (int last = arr.length-1; last > 0; last--) 
			for (int i = 0; i < last; i++)
				if (arr[i].compareTo(arr[i+1]) > 0) 
					swap(arr, i, i+1);
	}

	static void swap(Comparable [] arr, int i, int j) {
		Comparable t = arr[i];
		arr[i] = arr[j];
		arr[j] = t;
	}

	static String toString(Comparable [] arr) {
		String result = "{";
		for (int i = 0; i < arr.length; i++)
			result += arr[i] + (i < arr.length-1 ? ", " : "");
		return result + "}";
	}
}	

