tengo problemas con el método replace: en mi programa declaro cierto String y le pido al usuario que ingrese el caracter que sustituirá a "caracter" del stringBuilder, pero, cuando ejecuto se pasma y no entiendo por qué, ¿Tienes alguna idea de que está pasando?, pego mi código, thanks :)
public class EjemploStringBuilder {
private String str= "Usando StringBuilder",ss;
int s, s2;
private StringBuilder str2= new StringBuilder(str);
private static Scanner obdatos,obd;
public void reemplazar() {
System.out.println("Ingresa el caracter que ocupará el lugar de \"c\" en la cadena:");
ss=obd.nextLine();
str2.replace("c", "ss");
System.out.println("La nueva cadena es:"+ str2 );
}
public void longitud() {
System.out.println("La longitud de la cadena es:"+ str2.length());
}
public void extraer() {
System.out.println("Ingresa la cantidad de caracteres a leer:");
s=obdatos.nextInt();
str2.setLength(s);//realiza la operación sobre el argumento y ese es el nuevo valor para str2
System.out.println("La cadena es:" + str2);
}
public void imprimeConsola() {
System.out.println("El contenido de la cadena es:"+"******"+ str2+"*****");
}
public static void main(String[] args) {
EjemploStringBuilder b= new EjemploStringBuilder();
obdatos=new Scanner(System.in);
b.imprimeConsola();
b.longitud();
b.extraer();
b.reemplazar();
}
}