How do I make the code run properly? Code: import java.util.*; import java.util.Arrays; public class Movie { private String movieName; private int numMinutes; private boolean isKidFriendly; private...


How do I make the code run properly?


Code:


import java.util.*;


import java.util.Arrays;


public class Movie


{


private String movieName;


private int numMinutes;


private boolean isKidFriendly;


private int numCastMembers;


private String[] castMembers;


// default constructor


public Movie()


{


this.movieName = "Flick";


this.numMinutes = 0;


this.isKidFriendly = false;


this.numCastMembers = 0;


this.castMembers = new String[10];


}


// overloaded parameterized constructor


class movie{
public static void main(String args[]){
Movie obj=new Movie();
Movie obj1=new Movie(obj.getMovieName(),obj.getNumMinutes(),obj.isKidFriendly(),obj.getCastMembers());
System.out.println("Default Constructor: "+obj.getNumCastMembers());
System.out.println("Overloaded Constructor: "+obj1.getNumCastMembers());
}
}


// set the number of minutes


public void setNumMinutes(int numMinutes)


{


this.numMinutes = numMinutes;


}


// set the movie name


public void setMovieName(String movieName)


{


this.movieName = movieName;


}


// set if the movie is kid friendly or not


public void setIsKidFriendly(boolean isKidFriendly)


{


this.isKidFriendly = isKidFriendly;


}


// return the movie name


public String getMovieName()


{


return this.movieName;


}


// return the number of minutes


public int getNumMinutes()


{


return this.numMinutes;


}


// return true if movie is kid friendly else false


public boolean isKidFriendly()


{


return this.isKidFriendly;


}


// return the array of cast members


public String[] getCastMembers()


{


// create a deep copy of the array


String[] copyCastMembers = new String[this.castMembers.length];


// copy the strings from the array to the copy


for (int i = 0; i < this.castmembers.length;="">


{


copyCastMembers[i] = this.castMembers[i];


}


return copyCastMembers;


}


// return the number of cast members


public int getNumCastMembers()


{


return this.numCastMembers;


}


// method that allows the name of a castMember at an index in the castMembers


// array to be changed


public boolean replaceCastMember(int index, String castMemberName)


{


if (index < 0="" ||="" index="">= numCastMembers)


return false;


castMembers[index] = castMemberName;


return true;


}


// method that determines the equality of two String arrays and returns a


// boolean, by comparing the value at each index location.


// Return true if all elements of both arrays match, return false if there is


// any mismatch.


public boolean doArraysMatch(String[] arr1, String[] arr2)


{


if (arr1 == null && arr2 == null)


return true;


else if (arr1 == null || arr2 == null) // one of the array is null


return false;


else if (arr1.length != arr2.length) // length of arrays do not match


return false;


for (int i = 0; i < arr1.length;="">


{


if (!arr1[i].equalsIgnoreCase(arr2[i]))


return false;


}


return true;


}


public String getCastMemberNamesAsString()


{


if (numCastMembers == 0)


{


return "none";


}


String names = castMembers[0];


for (int i = 1; i < numcastmembers;="">


{


names += ", " + castMembers[i];


}


return names;


}


public String toString() {
   String movie = "Movie: [ Minutes "+String.format("%03d", numMinutes)+" | Movie Name: %21s |";
         if (isKidFriendly)
       movie +=" is kid friendly |";
     else
       movie +=" not kid friendly |";
   movie +=" Number of Cast Members: "+ numCastMembers+ " | Cast Members: "+getCastMemberNamesAsString()+" ]";
   return String.format(movie,movieName);
}


public boolean equals(Object o)
{
// check if o is an instance of Movie
if(o instanceof Movie)
{
Movie other = (Movie)o;
// returns true if all the fields are equal
return((movieName.equalsIgnoreCase(other.movieName)) && (isKidFriendly == other.isKidFriendly) && (numMinutes == other.numMinutes)
&& (numCastMembers == other.numCastMembers) && (doArraysMatch(castMembers,other.castMembers)));
}

return false; // movies are not equal or o is not an object of Movie
}


public static void main(String args[])


{


}


}

Jun 03, 2022
SOLUTION.PDF

Get Answer To This Question

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here