*   >> Lectura Educación Artículos >> tech >> desarrollo web

Ventaja y desventajas de aplicación de cadena En JAVA

eres que ahora se hace referencia por el StringBuffer. El objeto String mantiene la referencia a la matriz de caracteres previamente compartida. Esto significa que la copia de sobrecarga puede producirse en puntos inesperados en la aplicación. En lugar de la copia se produce en el toString () llamada al método, como era de esperar, cualquier posterior alteración del StringBuffer provoca una nueva matriz de caracteres que se creará y una copia matriz para ser realizado.

Para hacer la copia se produce sobrecarga en momentos predecibles, se podía ejecutar explícitamente algún método que hace que la copia se produzca, como StringBuffer.setLength (). Esto permite StringBuffers ser reutilizados con desventajas rendimiento.Las más previsibles de la aplicación de cadena son1. No ser capaz de subclase cuerdas significa que no es posible añadir el comportamiento de la cadena por su propio needs.2. El punto anterior significa que todo el acceso debe ser a través del conjunto restringido de métodos de Cuerda disponibles actualmente, imponiendo overhead.3 extra.

La única manera de aumentar el número de métodos que permiten la manipulación eficiente de los personajes de Cuerda es copiar los personajes en su propia matriz y manipularlos directamente, en cuyo caso Cadena está imponiendo un paso adicional y objetos adicionales No puedes need.4. Matrices Char son más rápidos para procesar directly.5. El estrecho acoplamiento con Tampón cadena puede provocar el uso inesperadamente alta memoria.

Cuando StringBuffer toString () crea una cadena, la matriz subyacente actual se mantiene la cadena, sin importar el tamaño de la matriz (es decir, la capacidad de la StringBuffer). Por ejemplo, un StringBuffer con una capacidad de 10.000 caracteres puede construir una cadena de 10 caracteres. Sin embargo, esa cadena de 10 caracteres continúa utilizando una matriz 10000-char para almacenar los 10 caracteres.

Si el StringBuffer ahora se reutiliza para crear otra cadena de 10 caracteres, el StringBuffer primero crea una nueva matriz 10000-char interna para construir la cadena con; a continuación, la nueva cadena también utiliza esa matriz 10000-char para almacenar los 10 caracteres. Obviamente, este proceso puede continuar indefinidamente, utilizando grandes cantidades de memoria donde no expected.The ventajas de Cuerdas se pueden resumir de la facilidad de uso, soporte de internacionalización, y la compatibilidad con las interfaces existentes.

La mayoría de los métodos esperan un objeto

Page   <<  [1] [2] [3] >>
Copyright © 2008 - 2016 Lectura Educación Artículos,https://lectura.nmjjxx.com All rights reserved.