import java.util.ArrayList ;
import java.util.Collections ;
interface bc { }
class b implements bc, Comparable< bc> {
str1 = var;
}
public int compareTo( bc object) {
if ( object instanceof b)
return str1.compareTo ( ( ( b) object) .str1 ) ;
if ( object instanceof c)
return str1.compareTo ( ( ( c) object) .str2 ) ;
return 0 ;
}
}
class c implements bc, Comparable< bc> {
str2 = var;
}
public int compareTo( bc object) {
if ( object instanceof b)
return str2.compareTo ( ( ( b) object) .str1 ) ;
if ( object instanceof c)
return str2.compareTo ( ( ( c) object) .str2 ) ;
return 0 ;
}
}
public class Main {
public static void main
( String [ ] args
) { b obj1 = new b( "aman" ) ;
c obj2 = new c( "monster" ) ;
b obj3 = new b( "back" ) ;
c obj4 = new c( "a" ) ;
ArrayList< bc> list = new ArrayList< bc> ( ) ;
list.add ( obj1) ;
list.add ( obj2) ;
list.add ( obj3) ;
list.add ( obj4) ;
System .
out .
println ( "unsorted list = " + list
) ; System .
out .
println ( "sorted list = " + list
) ; }
}
aW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CmltcG9ydCBqYXZhLnV0aWwuQ29sbGVjdGlvbnM7CgppbnRlcmZhY2UgYmMge30KCmNsYXNzIGIgaW1wbGVtZW50cyBiYywgQ29tcGFyYWJsZTxiYz4gewoJU3RyaW5nIHN0cjE7CgkKCWIgKFN0cmluZyB2YXIpIHsKCQlzdHIxID0gdmFyOwoJfQoJCglwdWJsaWMgaW50IGNvbXBhcmVUbyhiYyBvYmplY3QpIHsKCQlpZihvYmplY3QgaW5zdGFuY2VvZiBiKQoJCQlyZXR1cm4gc3RyMS5jb21wYXJlVG8oKChiKW9iamVjdCkuc3RyMSk7CgkJCgkJaWYob2JqZWN0IGluc3RhbmNlb2YgYykKCQkJcmV0dXJuIHN0cjEuY29tcGFyZVRvKCgoYylvYmplY3QpLnN0cjIpOwoJCQoJCXJldHVybiAwOwoJfQp9CgpjbGFzcyBjIGltcGxlbWVudHMgYmMsIENvbXBhcmFibGU8YmM+IHsKCVN0cmluZyBzdHIyOwoJCgljIChTdHJpbmcgdmFyKSB7CgkJc3RyMiA9IHZhcjsKCX0KCQoJcHVibGljIGludCBjb21wYXJlVG8oYmMgb2JqZWN0KSB7CgkJaWYob2JqZWN0IGluc3RhbmNlb2YgYikKCQkJcmV0dXJuIHN0cjIuY29tcGFyZVRvKCgoYilvYmplY3QpLnN0cjEpOwoJCQoJCWlmKG9iamVjdCBpbnN0YW5jZW9mIGMpCgkJCXJldHVybiBzdHIyLmNvbXBhcmVUbygoKGMpb2JqZWN0KS5zdHIyKTsKCQkKCQlyZXR1cm4gMDsKCX0KfQoKcHVibGljIGNsYXNzIE1haW4gewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewoJCWIgb2JqMSA9IG5ldyBiKCJhbWFuIik7CgkJYyBvYmoyID0gbmV3IGMoIm1vbnN0ZXIiKTsKCQliIG9iajMgPSBuZXcgYigiYmFjayIpOwoJCWMgb2JqNCA9IG5ldyBjKCJhIik7CgkJCgkJQXJyYXlMaXN0PGJjPiBsaXN0ID0gbmV3IEFycmF5TGlzdDxiYz4oKTsKCQkKCQlsaXN0LmFkZChvYmoxKTsKCQlsaXN0LmFkZChvYmoyKTsKCQlsaXN0LmFkZChvYmozKTsKCQlsaXN0LmFkZChvYmo0KTsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oInVuc29ydGVkIGxpc3QgPSAiK2xpc3QpOwoJCUNvbGxlY3Rpb25zLnNvcnQobGlzdCk7CgkJU3lzdGVtLm91dC5wcmludGxuKCJzb3J0ZWQgbGlzdCA9ICIrbGlzdCk7Cgl9Cn0=
compilation info
Main.java:57: error: no suitable method found for sort(ArrayList<bc>)
Collections.sort(list);
^
method Collections.<T#1>sort(List<T#1>,Comparator<? super T#1>) is not applicable
(cannot instantiate from arguments because actual and formal argument lists differ in length)
method Collections.<T#2>sort(List<T#2>) is not applicable
(inferred type does not conform to declared bound(s)
inferred: bc
bound(s): Comparable<? super bc>)
where T#1,T#2 are type-variables:
T#1 extends Object declared in method <T#1>sort(List<T#1>,Comparator<? super T#1>)
T#2 extends Comparable<? super T#2> declared in method <T#2>sort(List<T#2>)
1 error
stdout