THE NAMES CLASS IS BELOW AND WORKS JUST FINE import java.io.*; import java.util.
ID: 3684549 • Letter: T
Question
THE NAMES CLASS IS BELOW AND WORKS JUST FINE
import java.io.*;
import java.util.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class Hw5Number2 implements Comparable{
// Declare the required variables
private String lastName;
private String firstName;
// constructor
public Hw5Number2(String fstnm, String lstnm){
lastName = lstnm;
firstName = fstnm;
}
// method to get the last name
public String getlastname(){
return lastName;
}
// method to return the name
public String toString(){
return lastName+", "+firstName;
}
@Override
public int compareTo(Object other){
return getlastname().compareTo(((Hw5Number2)other).getlastname());
}
// main method
public static void main(String[] args){
ArrayList<Hw5Number2> arraylist = new ArrayList<Hw5Number2>();
arraylist.add(new Hw5Number2("Ken", "Smith"));
arraylist.add(new Hw5Number2("John", "Doe"));
arraylist.add(new Hw5Number2("Larry", "Last"));
// loop iteration
for(Hw5Number2 name: arraylist){
System.out.println(name);
}
// sorting
Collections.sort(arraylist);
System.out.println("---------- After Sorting ----------");
for(Hw5Number2 name: arraylist){
System.out.println(name);
}
}
}
Explanation / Answer
import java.io.*;
import java.util.*;
public class Hw5Number2 implements Comparable{
// Declare the required variables
private String lastName;
private String firstName;
// constructor
public Hw5Number2(String fstnm, String lstnm){
lastName = lstnm;
firstName = fstnm;
}
// method to get the last name
public String getlastname(){
return lastName;
}
// method to return the name
public String toString(){
return lastName+", "+firstName;
}
@Override
public int compareTo(Object other){
return getlastname().compareTo(((Hw5Number2)other).getlastname());
}
// overriding equals methods
@Override
public boolean equals(Object obj) {
Hw5Number2 temp = (Hw5Number2)obj;
if(this.firstName.equalsIgnoreCase(temp.firstName) && this.lastName.equalsIgnoreCase(temp.lastName))
return true;
return false;
}
// main method
public static void main(String[] args){
ArrayList<Hw5Number2> arraylist = new ArrayList<Hw5Number2>();
arraylist.add(new Hw5Number2("Ken", "Smith"));
arraylist.add(new Hw5Number2("John", "Doe"));
arraylist.add(new Hw5Number2("Larry", "Last"));
// loop iteration
for(Hw5Number2 name: arraylist){
System.out.println(name);
}
// sorting
Collections.sort(arraylist);
System.out.println("---------- After Sorting ----------");
// using equals method
Hw5Number2 name1 = new Hw5Number2("John", "Doe");
System.out.println("contains(name1): "+arraylist.contains(name1));
for(Hw5Number2 name: arraylist){
System.out.println(name);
}
}
}
/*
Output:
Smith, Ken
Doe, John
Last, Larry
---------- After Sorting ----------
contains(name1): true
Doe, John
Last, Larry
Smith, Ken
*/
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.