import java.util.ArrayList ;
import java.util.Collections ;
class b implements Comparable< c> {
this .str1 = str1;
}
public int compareTo( c object) {
return str1.compareTo ( object.str1 ) ;
}
}
class c implements Comparable< b> {
this .str1 = str1;
}
public int compareTo( b object) {
return str1.compareTo ( object.str1 ) ;
}
}
public class Main {
public static void main
( String [ ] args
) { b obj1 = new b( "monster" ) ;
c obj2 = new c( "aman" ) ;
b obj3 = new b( "hello" ) ;
c obj4 = new c( "world" ) ;
list.add ( obj1) ;
list.add ( obj2) ;
list.add ( obj3) ;
list.add ( obj4) ;
System .
out .
println ( "unsorted list = " + list
) ; System .
out .
println ( "sorted list = " + list
) ; }
}
aW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CmltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CgpjbGFzcyBiIGltcGxlbWVudHMgQ29tcGFyYWJsZTxjPiB7CiAgICBTdHJpbmcgc3RyMTsKCiAgICBiKFN0cmluZyBzdHIxKSB7CiAgICAgICAgdGhpcy5zdHIxID0gc3RyMTsKICAgIH0KCiAgICBwdWJsaWMgaW50IGNvbXBhcmVUbyhjIG9iamVjdCkgewogICAgICAgIHJldHVybiBzdHIxLmNvbXBhcmVUbyhvYmplY3Quc3RyMSk7CiAgICB9Cn0KCmNsYXNzIGMgaW1wbGVtZW50cyBDb21wYXJhYmxlPGI+IHsKICAgIFN0cmluZyBzdHIxOwoKICAgIGMoU3RyaW5nIHN0cjEpIHsKICAgICAgICB0aGlzLnN0cjEgPSBzdHIxOwogICAgfQoKICAgIHB1YmxpYyBpbnQgY29tcGFyZVRvKGIgb2JqZWN0KSB7CiAgICAgICAgcmV0dXJuIHN0cjEuY29tcGFyZVRvKG9iamVjdC5zdHIxKTsKICAgIH0KfQoKcHVibGljIGNsYXNzIE1haW4gewoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBiIG9iajEgPSBuZXcgYigibW9uc3RlciIpOwogICAgICAgIGMgb2JqMiA9IG5ldyBjKCJhbWFuIik7CiAgICAgICAgYiBvYmozID0gbmV3IGIoImhlbGxvIik7CiAgICAgICAgYyBvYmo0ID0gbmV3IGMoIndvcmxkIik7CgogICAgICAgIEFycmF5TGlzdCBsaXN0ICA9IG5ldyBBcnJheUxpc3QoKTsKICAgICAgICBsaXN0LmFkZChvYmoxKTsKICAgICAgICBsaXN0LmFkZChvYmoyKTsKICAgICAgICBsaXN0LmFkZChvYmozKTsKICAgICAgICBsaXN0LmFkZChvYmo0KTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oInVuc29ydGVkIGxpc3QgPSAiK2xpc3QpOwogICAgICAgIENvbGxlY3Rpb25zLnNvcnQobGlzdCk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJzb3J0ZWQgbGlzdCA9ICIrbGlzdCk7CiAgICB9Cn0=
stdout
unsorted list = [b@eb3c84, c@1d2162c, b@1adceb8, c@1debcf3]
stderr
Exception in thread "main" java.lang.ClassCastException: b cannot be cast to c
at b.compareTo(Main.java:4)
at java.util.ComparableTimSort.binarySort(ComparableTimSort.java:232)
at java.util.ComparableTimSort.sort(ComparableTimSort.java:158)
at java.util.ComparableTimSort.sort(ComparableTimSort.java:146)
at java.util.Arrays.sort(Arrays.java:472)
at java.util.Collections.sort(Collections.java:155)
at Main.main(Main.java:42)