With this code:
public static void main(String[] args) {
String s = \"Java\";
StringBuilder buffer = new StringBuilder(s);
change(buffer);
StringBuilder does have a constructor accepting a String as an argument, and does have a .charAt() method (which it it must implement since it implements CharSequence
).
Conclusion: this is a mishap from the part of your IDE, which did not import the correct StringBuilder
. You use another library which has the unfortunate "property" of having implemented a class by the same name -- but not in the same package.
Go see at the top of your file if the import line is:
import java.lang.StringBuilder;