/** * run the program * * * author Bijan Tajmir * */ public class TestMusic { public static void main(String[] args) { Music[] myMusic = new Music[10]; myMusic[0] = new Music("Pieces of You",1994, "Jewel"); myMusic[1] = new Music("Jagged Little Pill",1995,"Alanis Morissette"); myMusic[2] = new Music("What If It's You", 1995,"Reba McEntired"); myMusic[3] = new Music("Misunderstood",2001,"Pink"); myMusic[4] = new Music("Laundry Service",2001,"Shakira"); myMusic[5] = new Music("Taking the Long Way",2006,"Dixie Chicks"); myMusic[6] = new Music("Under My Skin",2004,"Avril Lavigne"); myMusic[7] = new Music("Let Go",2002,"Avril Lavigne"); myMusic[8] = new Music("Let It Go",2007,"Tim McGraw"); myMusic[9] = new Music("White Flag",2004,"Dido"); printmyMusic(myMusic); System.out.println(); System.out.println("Search - Title - Let Go"); findTitle(myMusic, "Let Go"); System.out.println(); System.out.println("Search - Title - Some Day"); findTitle(myMusic, "Some Day"); System.out.println(); System.out.println("Search - Year - 2001"); findYear(myMusic, 2001); System.out.println(); System.out.println("Search - Singer - Avril Lavigne"); findSinger(myMusic, "Avril Lavigne"); System.out.println(); System.out.println("Search - Singer - Tony Curtis"); findSinger(myMusic, "Tony Curtis"); } public static void printmyMusic(Music[] r) { System.out.println("Time Location Person"); System.out.println("---------------------------------------------------"); for(int i = 0; i < r.length; i++) { if(r[i] != null) { System.out.println(r[i]); } } } public static void findSinger(Music[] r, String toFind) { int found = 0; for(int i = 0; i < r.length; i++) { if (r[i].getsinger() != null) { if (r[i].getsinger().compareTo(toFind) == 0) { System.out.println(r[i]); found++; } } } if (found == 0) { // we have not found the location System.out.println("There are no listings for " + toFind); System.out.println(); } else { System.out.print("There were " + found + " listings for " + toFind); System.out.println(); } } public static void findTitle(Music[] r, String toFind) { int found = 0; for(int i = 0; i < r.length; i++) { if (r[i].gettitle() != null && toFind != null) //java.lang.NullPointerException occurs here { if (r[i].gettitle().compareTo(toFind) == 0) { System.out.println(r[i]); found++; } } } if (found == 0) { // we have not found the location System.out.println("There are no listings for " + toFind); System.out.println(); } else { System.out.print("There were " + found + " listings for " + toFind); System.out.println(); } } public static void findYear(Music[] r, int toFind) { int found = 0; for(int i = 0; i < r.length; i++) { if (r[i].getyear() == toFind) { System.out.println(r[i]); found++; } } if (found == 0) { // we have not found the location System.out.println("There are no listings for " + toFind); System.out.println(); } else { System.out.print("There were " + found + " listings for " + toFind); System.out.println(); } } }