how to implement a comparator for StringBuffer class in Java for use in
TreeSet?
I want to implement a Comparator for StringBuffer that compares the
StringBuffer and adds to TreeSet accordingly. This is purely for learning
purposes only. I know having a mutable object in a Hasable collection is a
bad idea. but the purpose here is how to implement comparator for existing
StringBuffer class of Java and use it to create a TreeSet. My current code
is below. The code does not compile. kindly help me out here. Thanks
public class ComparatorExample {
public class SbufferComparator implements Comparator<StringBuffer> {
@Override
public int compare(StringBuffer s1, StringBuffer s2) {
return s1.toString().compareTo(s2.toString());
}
}
public static void main(String[] args) {
StringBuffer one = new StringBuffer("one");
StringBuffer two = new StringBuffer("two");
StringBuffer three = new StringBuffer("three");
Set<StringBuffer> sb=new TreeSet<StringBuffer>(new
SbufferComparator());
sb.add(one);
sb.add(two);
sb.add(three);
System.out.println("set before change: "+ sb);
one.append("onemore");
System.out.println("set After change: "+ sb);
}
}
No comments:
Post a Comment