1)Sort an array list of strings by increasing length. In java code Heres what i
ID: 3689463 • Letter: 1
Question
1)Sort an array list of strings by increasing length. In java code
Heres what i have so far but I can't figure out the compare method
import java.util.*;
public class Sort implements Comparator<ArrayList>
{
public int compare(Arraylist a, ArrayList b)
{
if(a.length() < b.length())
{
return -1;
}
else
if(a.length() == b.length())
{
return 0;
}
else
{
return 2;
}
}
public static void main(String [] args)
{
System.out.println("ArrayList1 before sort: ");
ArrayList<String> a = new ArrayList<>();
a.add("kind");
a.add("lift");
a.add("gym");
a.add("on");
//Print arraylist before sort
System.out.print(a);
System.out.println(" ");
//Print arraylist after sort
System.out.println("ArrayList1 after sort:");
Collections.sort(a);
System.out.println(a.toString());
System.out.println("Arraylist 2 before sort: ");
ArrayList<String> b = new ArrayList<>();
b.add("bat");
b.add("page");
b.add("car");
b.add("new");
//Print arraylist2 before sort
System.out.print(b);
System.out.print(" ");
//Print arraylist2 after sort
System.out.println(" ");
System.out.println("Arraylist2 after sort: ");
Collections.sort(b);
System.out.println(b.toString());
}
}
Explanation / Answer
Hi, Highlighted areas are modifications. It is working fine now.
Sort.java
import java.util.*;
public class Sort implements Comparator<ArrayList>
{
public int compare(ArrayList a, ArrayList b)
{
if(a.size() < b.size())
{
return -1;
}
else
if(a.size() == b.size())
{
return 0;
}
else
{
return 2;
}
}
public static void main(String [] args)
{
System.out.println("ArrayList1 before sort: ");
ArrayList<String> a = new ArrayList<String>();
a.add("kind");
a.add("lift");
a.add("gym");
a.add("on");
//Print arraylist before sort
System.out.print(a);
System.out.println(" ");
//Print arraylist after sort
System.out.println("ArrayList1 after sort:");
Collections.sort(a);
System.out.println(a.toString());
System.out.println("Arraylist 2 before sort: ");
ArrayList<String> b = new ArrayList<String>();
b.add("bat");
b.add("page");
b.add("car");
b.add("new");
//Print arraylist2 before sort
System.out.print(b);
System.out.print(" ");
//Print arraylist2 after sort
System.out.println(" ");
System.out.println("Arraylist2 after sort: ");
Collections.sort(b);
System.out.println(b.toString());
}
}
Output:
ArrayList1 before sort:
[kind, lift, gym, on]
ArrayList1 after sort:
[gym, kind, lift, on]
Arraylist 2 before sort:
[bat, page, car, new]
Arraylist2 after sort:
[bat, car, new, page]
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.