formal 8: STRINGBUILDER
en esta semana el profesor nos dejo un desafió de hacer un tablero de ajedres en c#, el cual no pude hacer, tenia que escribir un numero, y el programa ponía el numero de filas y columnas,
el que lo logro fue un compañero y uso el while y el STRINGBUILDER que es de el que hablare
CLASE STRINGBUILDER
La clase StringBuilder es similar a la clase String en el sentido de que sirve para almacenar cadenas de caracteres. No obstante, presenta algunas diferencias relevantes. Señalaremos como características de StringBuilder a tener en cuenta:
- Su tamaño y contenido pueden modificarse. Los objetos de éste tipo son mutables. Esto es una diferencia con los String.
- Debe crearse con alguno de sus costructores asociados. No se permite instanciar directamente a una cadena como sí permiten los String.
- Un StringBuilder está indexado. Cada uno de sus caracteres tiene un índice: 0 para el primero,1 para el segundo, etc.
- Los métodos de StringBuilder no están sincronizados. Esto implica que es más eficiente que StringBuffer siempre que no se requiera trabajar con múltiples hilos (threads), que es lo más habitual.
Los constructores de StringBuilder se resumen en la siguiente tabla:
Constructor
|
Descripción
|
Ejemplo
|
StringBuilder()
|
Construye un StringBuilder vacío y con una capacidad por defecto de 16 carácteres.
|
StringBuilder s = new StringBuilder();
|
StringBuilder(int capacidad)
|
Se le pasa la capacidad (número de caracteres) como argumento.
|
StringBuilder s = new StringBuilder(55);
|
StringBuilder(String str)
|
Construye un StringBuilder en base al String que se le pasa como argumento.
|
StringBuilder s = new StringBuilder("hola");
|
Retorno
|
Método
|
Explicación
|
StringBuilder
|
append(...)
|
Añade al final del StringBuilder a la que se aplica, un String o la representación en forma de String de un dato asociado a una variable primitiva
|
int
|
capacity()
|
Devuelve la capacidad del StringBuilder
|
int
|
length()
|
Devuelve el número de caracteres del StringBuilder
|
StringBuilder
|
reverse()
|
Invierte el orden de los caracteres del StringBuilder
|
void
|
setCharAt(int indice,char ch)
|
Cambia el carácter indicado en el primer argumento por el carácter que se le pasa en el segundo
|
char
|
charAt(int indice)
|
Devuelve el carácter asociado a la posición que se le indica en el argumento
|
void
|
setLength(int nuevaLongitud)
|
Modifica la longitud. La nueva longitud no puede ser menor
|
String
|
toString()
|
Convierte un StringBuilder en un String
|
StringBuilder
|
insert(int indiceIni,String cadena)
|
Añade la cadena del segundo argumento a partir de la posición indicada en el primero
|
StringBuilder
|
delete(int indiceIni,int indiceFin)
|
Borra la cadena de caracteres incluidos entre los dos indices indicados en los argumentos
|
StringBuilder
|
deleteChar(int indice)
|
Borra el carácter indicado en el índice
|
StringBuilder
|
replace(int indiceIni, int indiceFin,String str)
|
Reemplaza los caracteres comprendidos entre los dos indices por la cadena que se le pasa en el argumento
|
int
|
indexOf (String str)
|
Analiza los caracteres de la cadena y encuentra el primer índice que coincide con el valor deseado
|
String
|
subString(int indiceIni,int indiceFin)
|
Devuelve una cadena comprendida entre los dos índices
|
Los métodos principales de StringBuilder se resumen en la siguiente tabla:
El método append será probablemente el más utilizado cuando trabajemos con esta clase.
https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=961:stringbuffer-stringbuilder-java-ejemplo-diferencias-entre-clases-criterios-para-elegir-metodos-cu00914c&catid=58&Itemid=180
Muy buena entrada, cada uno de los conceptos empleados para explicar el stringbuilder están correctos. Y las tablas complementan muy bien tu explicación
ResponderEliminarPues ya ni me acordaba del stringbuilder, creo que me tendré que ponerme a estudiar para que no me vaya mal, gracias por el repaso, compañero ;) :thumbup
ResponderEliminar