// Code for CS1Ah Note 19: Supporting Queries. // November 2002. public class Test { public Test() { } public static void main(String[] args) { Student Alfa = new Student("Alfa", "Delta", "Paul Jackson"); Student Bravo = new Student("Bravo", "Echo", "Paul Jackson"); Student Charlie = new Student ("Charlie", "Foxtrot", "Murray Cole"); // title points mark Alfa.courses[0] = new Course("CS2", 40, 65); Alfa.courses[1] = new Course("AI2", 40, 55); Alfa.courses[2] = new Course("Maths2Y", 40, 55); Bravo.courses[0] = new Course("CS2", 40, 65); Bravo.courses[1] = new Course("Bus2", 40, 70); Charlie.courses[0] = new Course("CS2", 40, 55); Charlie.courses[1] = new Course("AI2", 40, 60); StudentCollection students = new StudentCollection(); students.insert(Alfa); students.insert(Bravo); students.insert(Charlie); System.out.println("All students: \n" + students); System.out.println("Students selected by property1(): \n" + students.select1()); System.out.println( "Students selected by hasBasicProperty(\"AI2 mark over 50\"): \n" + students.select2("AI2 mark over 50") ); String[] conjunctiveProperty = {"DoS is Paul Jackson", "AI2 mark over 50"}; System.out.println( "Students selected by conjunction of\n" + " \"DoS is Paul Jackson\" and \"AI2 mark over 50\": \n" + students.select3(conjunctiveProperty) ); String[][] dnfProperty = { { "DoS is Paul Jackson", "CS2 mark over 50", "not taking AI2" }, { "DoS is Paul Jackson", "CS2 mark over 50", "AI2 mark over 50" } }; System.out.println( "Students selected by DNF version of property1():\n" + students.select4(dnfProperty) ); return; } }