StringBuffer en Java: 11 métodos populares que todo desarrollador de Java debe conocer
Publicado: 2021-05-26Tabla de contenido
Introducción a StringBuffer en Java
StringBuffer en java es una clase que hereda métodos de la clase java.lang.Object. Es una clase par de String que se usa para crear String modificable o mutable. Proporciona gran parte de la funcionalidad de String excepto que se puede cambiar, es decir, representa secuencias de caracteres modificables y ampliables en lugar de secuencias de caracteres inmutables y de longitud fija. Aquí hay algunos puntos esenciales sobre java.lang.StringBuffer en Java:
· El contenido y la longitud de la secuencia de caracteres se pueden cambiar a través de varias llamadas a métodos.
· Es seguro para subprocesos, es decir, seguro para múltiples subprocesos
· Cada StringBuffer en Java tiene una capacidad.
· Las subcadenas y los caracteres se pueden agregar al final o insertarse en el medio. Crece automáticamente y deja espacio para adiciones. A menudo, se asignan previamente más caracteres de los necesarios para permitir el crecimiento.
Así es como se declara StringBuffer en la clase Java:
clase final pública StringBuffer
extiende objeto
implementa Serializable, CharSequence
Constructores de la clase StringBuffer
1. StringBuffer() : se utiliza para construir un búfer de cadenas con una capacidad inicial de 16 caracteres y sin caracteres. Sintaxis:
StringBuffer a =nuevo StringBuffer();
2. StringBuffer (CharSequence seq) : se utiliza para construir un búfer de cadena que contiene los mismos caracteres que en CharSequence.
3. StringBuffer (capacidad int) : se utiliza para crear un búfer de cadena cuya capacidad inicial se especifica y sin caracteres. Sintaxis:
StringBuffer a=nuevo StringBuffer(10);
4. StringBuffer (String str) : se utiliza para crear un búfer de cadena con el contenido de cadena dado. Sintaxis:
StringBuffer a=nuevo StringBuffer(“stringbuffer en java”);
Leer: Diferencia entre los búferes de cadenas y los constructores de cadenas
11 métodos populares
1) StringBuffer en el método Java Append()
.append() se usa para concatenar la cadena y el argumento dados. Aquí hay un ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“stringbuffer”);
a.append(“en Java”);
Sistema.salida.println(a);
a.agregar(0);
Sistema.salida.println(a);
}
}
Producción:
2) StringBuffer en el método Java Insert()
El método .insert() se usa para insertar una cadena dada con la cadena principal en la posición especificada. Aquí hay un ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“stringbuffer”);
a.insertar(5, “para”);
Sistema.salida.println(a);
a.insertar(0, 5);
Sistema.salida.println(a);
a.insertar(3, falso);
Sistema.salida.println(a);
a.insertar(5, 41.55d);
Sistema.salida.println(a);
a.insertar(8, 41.55f);
Sistema.salida.println(a);
char arr[] = { 'j', 'a', 'v', 'a' };
a.insertar(2, arr);
Sistema.salida.println(a);
} }
Producción:
Lea también: Ideas y temas de proyectos Java
3) StringBuffer en el método java replace()
.replace() se usa para reemplazar una parte de la cadena como se especifica en el rango (beginIndex, endIndex). Aquí hay un ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“stringbuffer”);
a.replace(5, 8, “son”);
Sistema.salida.println(a);
}
}
Producción:
4) StringBuffer en el método Java Delete()
.delete() se usa para eliminar la cadena como se especifica en el rango (beginIndex, endIndex).
.deleteCharAt() se usa para eliminar el carácter en un índice específico. Este método devuelve el objeto stringbuffer resultante. Aquí hay un ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“buffer de cadenas en java”);
a.eliminar(0, 6);
Sistema.salida.println(a);
a.deleteCharAt(7);
Sistema.salida.println(a);
}
}
Producción:
5) StringBuffer en el método Java Reverse()
.reverse() como sugiere el nombre se usa para invertir la cadena dada. Aquí hay un ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“stringbuffer”);
a.reverse();
Sistema.salida.println(a);
}
}
Producción:
6) StringBuffer en el método Java Capacity()
.capacity() de StringBuffer en la clase java se usa para devolver la capacidad actual del búfer. 16 es la capacidad predeterminada. La capacidad aumenta al aumentar el número de caracteres. La nueva capacidad = (capacidad antigua*2)+2. es decir, si la capacidad actual es 16, la nueva capacidad será 32+2=34.
.length se usa para encontrar la longitud de un StringBuffer en java. Por ejemplo:
importar java.io.*;
búfer de clase pública {
public static void main(String[] args)
{
StringBuffer a = new StringBuffer(“stringbuffer”);
int p = a.longitud();
int q = a.capacidad();
System.out.println(“La longitud de la cadena es=” + p);
System.out.println(“La capacidad de la cadena es=” + q);
}
}
Producción:
Obtenga títulos de ingeniería de software en línea de las mejores universidades del mundo. Obtenga programas Executive PG, programas de certificados avanzados o programas de maestría para acelerar su carrera.
7) StringBuffer en el método de Java asegurarCapacity()
.ensureCapacity() de la clase stringbuffer se usa para garantizar que la capacidad especificada sea la mínima para la capacidad actual. Si la capacidad dada es mayor que la capacidad actual, la nueva capacidad se convierte en (capacidad anterior*2)+2. es decir, la capacidad se convierte en 34 si oldcapacity es 16. Por ejemplo:
búfer de clase pública{
public static void main(String args[]){
StringBuffer a=nuevo StringBuffer();
System.out.println(a.capacidad());
a.append(“Hola”);
System.out.println(a.capacidad());
a.append(“java”);
System.out.println(a.capacidad());
a.ensureCapacity(10);
System.out.println(a.capacidad());
a.ensureCapacity(50);
System.out.println(a.capacidad());
}
}
Producción:
Pago: salario de desarrollador de Java en la India
8. charAt (índice int) : este método se utiliza para devolver el carácter en el índice dado.
9. subcadena( int begIndex) – Este método se usa para devolver una subcadena de una cadena determinada a partir de beginIndex.
10. substring(int beginIndex, int endIndex) – Este método se utiliza para devolver la subcadena de la cadena dada que comienza en beginIndex y finaliza en endIndex.
11. void trimToSize() : este método se usa para reducir el espacio de almacenamiento para la secuencia de caracteres
Diferencia entre String y StringBuffer en Java
Usamos este ejemplo para crear objetos de la clase StringBuffer y String y modificarlos. Vemos que el objeto StringBuffer se modifica, mientras que String no. Vea el ejemplo a continuación:
búfer de clase pública {
public static void main(String args[])
{
Cadena cadena = "cadena";
str.concat(“búfer”);
Sistema.salida.println(str);
StringBuffer strB = new StringBuffer(“cadena”);
strB.append(“búfer”);
Sistema.salida.println(strB);
}
}
Producción:
Explicación: El resultado es tal porque las cadenas son inmutables. Si intentamos concatenar el objeto de cadena, no se modificará. Sin embargo, un StringBuffer en Java crea objetos mutables. Por lo tanto, puede ser alterado.
Puntos interesantes
- Extiende la clase Object.
- Las interfaces implementadas de StringBuffer en Java son Appendable, Serializable y CharSequence.
- Los métodos de StringBuffer se pueden sincronizar siempre que sea necesario. Esto significa que todas las operaciones se comportan como si ocurrieran en algún orden en serie.
- Cuando ocurre una operación que involucra la secuencia de origen, esta clase se sincroniza solo en el búfer de cadenas que opera y no en el origen.
- Algunos de los métodos heredados de la clase de objeto son iguales, clonar, obtener Clase, notificar, notificar a Todos, hashCode y finalizar.
Conclusión
StringBuffer en Java crea objetos de cadena modificables. Así, podemos usar StringBuffer para agregar, reemplazar, invertir, concatenar y modificar la secuencia de caracteres o cadenas. Los métodos de la clase StringBuffer se adhieren a estas funciones. En resumen, StringBuffer en Java se usa solo cuando varios subprocesos modifican el contenido de StringBuffer. Es más rápido que String.
En este artículo, aprendimos todos los detalles sobre Java StringBuffer . Si está buscando aprender más sobre Java y avanzar en su carrera técnica, explore los cursos de upGrad , la compañía de educación superior en línea más grande de la India.
Si está interesado en obtener más información sobre Java, desarrollo de software de pila completa, consulte el programa Executive PG de upGrad & IIIT-B en desarrollo de software: especialización en desarrollo de pila completa, que está diseñado para profesionales que trabajan y ofrece más de 500 horas de formación rigurosa. , más de 9 proyectos y asignaciones, estado de exalumno de IIIT-B, proyectos finales prácticos prácticos y asistencia laboral con las mejores empresas.