File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Beginning Java and the fly likes contentEquals in java.lang.String Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Beginning Java
Bookmark "contentEquals in java.lang.String" Watch "contentEquals in java.lang.String" New topic

contentEquals in java.lang.String

Vijay Raj
Ranch Hand

Joined: Oct 10, 2005
Posts: 110

The String class in Java 5 has two contentEquals(), one that takes in a StringBuffer and another that takes in a CharSequence. contentEquals(CharSequence) was introduced in Java 5 AND StringBuffer IS-A CharSequence as in implements it.

Now, the question. Why do we need contentEquals(StringBuffer) in Java 5. Won't contentEquals(CharSequence) be enough.

One solution to this would be that programs written in Java 1.4 won't run in a Java 5 runtime if contentEquals(StringBuffer) is removed. But then, won't contentEquals(CharSequence) take its place.

Ernest Friedman-Hill
author and iconoclast

Joined: Jul 08, 2003
Posts: 24199

The CharSequence version would take its place if you recompiled your code. But removing the method would break binary compatibility -- i.e., code that wasn't recompiled wouldn't work if it called the StringBuffer method.

To the best of my knowledge Sun has actually never removed a method from the API.

[Jess in Action][AskingGoodQuestions]
I agree. Here's the link:
subject: contentEquals in java.lang.String
It's not a secret anymore!