¿Cuál es el significado de todos los caracteres en inglés insertados en los caracteres de control Unicode?
Las cadenas utilizadas en los programas se pueden dividir en dos categorías:
(1) Constantes de cadena, que no se pueden modificar ni cambiar después de su creación;
(2) Las variables de cadena permiten modificaciones o cambios después de la creación.
Para las constantes de cadena, dado que los programas a menudo necesitan realizar operaciones como compararlas y buscarlas, generalmente se colocan en un objeto con un determinado nombre y el programa completa las operaciones anteriores en el objeto. En Java, los objetos que almacenan constantes de cadena pertenecen a la clase String. Para las variables de cadena, debido a que los programas a menudo necesitan agregar, insertar, modificar, etc., generalmente se almacenan en objetos de la clase StringBuffer.
1 clase String
Las constantes String están representadas por objetos de la clase String. Las constantes de cadena se utilizaron varias veces en el programa anterior. Lo primero que hay que enfatizar aquí es que las constantes de cadena son diferentes de las constantes de caracteres. Las constantes de caracteres son caracteres individuales encerrados entre comillas simples, como 'a', '\n', etc. Las constantes de cadena son secuencias de caracteres entre comillas dobles, como 'a', '\n', 'Hola', etc. A primera vista, las constantes de cadena en Java no son diferentes de las constantes de cadena en otros lenguajes, pero la implementación es muy diferente. De hecho, para todas las constantes de cadena entre comillas dobles, se crea un objeto sin nombre de tipo Cadena.
(1) Crear un objeto de cadena para una constante de cadena
Dado que los objetos de la clase de cadena representan constantes de cadena, en términos generales, una vez que se crea una cadena, su longitud Ni el contenido ni el contenido se puede cambiar. Por lo tanto, cuando crea un objeto String, normalmente pasa parámetros al constructor de la clase String para especificar el contenido de la cadena que crea. A continuación se muestra una breve lista de los constructores de la clase String y cómo usarlos.
(1) pulic String()
Este constructor se utiliza para crear una constante de cadena vacía.
(2) cadena pública (valor de cadena)
Este constructor se utiliza para crear un nuevo objeto de cadena utilizando una constante de cadena existente. La constante de cadena puede ser otro objeto String o una constante directa entre comillas dobles.
(3) cadena pública (búfer stringBuffer)
Este constructor inicializa un objeto String recién creado utilizando el contenido de una matriz de caracteres existente.
Crear un objeto de cadena es lo mismo que crear un objeto de cualquier otra clase. Se divide en dos pasos: declaración del objeto y creación del objeto. Estos dos pasos se pueden dividir en dos declaraciones separadas o completarse en la siguiente declaración.
Por ejemplo, la siguiente oración solo declara un objeto de cadena s:
String s;
En este momento, el valor de s está vacío. para usar s , también debes abrir espacio de memoria para ello.
String s=new String ("ABC");
De esta manera, al llamar al segundo constructor anterior, la cadena s se establecerá en "ABC". Las dos declaraciones anteriores también se pueden combinar en una sola declaración, de la siguiente manera:
String s=new String ("ABC");
En Java, también hay una muy especial y Método comúnmente utilizado para crear un objeto String.
Este método utiliza directamente comillas dobles para encerrar la constante de cadena y "asignar" el nuevo objeto String:
String s = "ABC";
De hecho, la "asignación" aquí " ¡Solo una omisión especial! Como se mencionó anteriormente, el sistema Java crea automáticamente un objeto String para cada constante de cadena entre comillas dobles, por lo que el significado y efecto reales de esta oración son exactamente los mismos que los de la oración anterior.
2. Operaciones de rendimiento de cadenas
La clase String contiene muchas operaciones sobre constantes de cadena, como la longitud de la cadena. El método específico es el siguiente:
public int length ();
Úselo para obtener el número de caracteres en el objeto de cadena actual. Por ejemplo, ejecute el siguiente código:
String s="Hello!"
System.out.println(s.length());
El La pantalla mostrará 6, porque la longitud de la cadena "¡Hola!" es 6. Cabe señalar que en Java, dado que cada carácter ocupa 16 bits, solo se usa un carácter para los caracteres chinos, mientras que solo se usa un carácter para los símbolos ingleses u otros. Si reemplaza la cadena anterior con "¿Cómo está tu salud?" booleano termina con (String prefix);
Public boolean comienza con (String prefix);
Public boolean termina con (String prefix);
Estos dos métodos se pueden utilizar por separado. Determine si el prefijo y el sufijo de la cadena actual son subcadenas de caracteres.
En algunos casos, distinguir entre prefijos y sufijos de cadena es una operación muy útil.
Otro ejemplo es, el último dígito del número de tarjeta de identificación de residente representa el sexo del residente, los números impares representan hombres, los números pares representan mujeres
{ System.out.println ("Esta persona es mujer");
}
Una ventaja destacada de startWith y endWith es que no hay límite para la longitud del prefijo y sufijo que se puede determinar. Por ejemplo, en el ejemplo anterior, si el prefijo a determinar cambia de "6278" a "627", el método original sigue siendo válido sin cambiar el programa.
4. Encuentra un solo carácter. en la cadena
public int indexOf (int ch);
public int indexOf (int ch, int fromIndex);
Los dos métodos anteriores encuentran la posición de un carácter específico en la cadena actual. El primer método encuentra la posición donde aparece el carácter ch una vez en la cadena actual, es decir, busca hacia atrás desde el principio y devuelve la posición donde aparece el carácter ch. Por ejemplo, la siguiente declaración. asigna el valor 0 al entero idx:
String s="java es un lenguaje orientado a objetos y javaScript es un lenguaje de scripting" ;
int idx=s.indexOf(( int)'J');
El segundo método es encontrar la posición donde aparece un determinado carácter en la cadena actual. Buscar hacia atrás en la cadena actual comenzando desde los caracteres fromIndex y devolver la posición de la primera aparición. de este personaje.
La siguiente declaración encontrará todas las apariciones del carácter especificado en una cadena:
String s="java es un lenguaje orientado a objetos y javaScript es un lenguaje de secuencias de comandos";
int i =- 1;
hacer{
i=s.indexOf((int)'a', i );<
system.out.print( i " \t")print(i "\t");
} while(i!=-1);
Ejecuta: 1 3 14 16 -1
Los dos métodos siguientes también son métodos para encontrar un solo carácter en una cadena. La diferencia es que buscan desde el final de la cadena hasta el principio. Aquí no se dan ejemplos. No daré más ejemplos.
public int lastIndexOf(int ch);
public int lastIndexOf(int ch, int fromIndex);
5. Buscar subcadenas en una cadena
public int indexOf(string str);
public int indexOf(string str, int fromIndex);
public int lastIndexOf(string str);
public int lastIndexOf(string str, int fromIndex);
Buscar una subcadena de caracteres en una cadena es muy similar a encontrar un solo carácter en una cadena. Hay cuatro métodos para elegir, es decir, reemplace el carácter ch con la cadena especificada str en los cuatro métodos para encontrar un solo carácter. El siguiente ejemplo comienza al final de la cadena y busca todas las apariciones de la subcadena. position:
String s="java es un lenguaje orientado a objetos, javaScript es un lenguaje de scripting";
String sub="language";
para (int i=s.length(); i!=-1){
i=s.lastIndexOf( sub, i-1);
system.out. i "\t");
}
El resultado de ejecutar el programa anterior es: 26 10 -1
Además, el método utilizado para obtener Método para un determinado carácter en la cadena:
public charAt(int index);
Este método obtiene el carácter de índice de la cadena actual y devuelve el carácter (el índice comienza a contar desde 0).
6. Comparar dos cadenas
public int compareTo(string anotherString);
public boolean es igual (Object anObject);
public boolean equalsIgnoreCase(string anotherString);
Hay tres métodos en la clase String para comparar si dos cadenas son iguales. El método igual es un método de clase Objeto sobrecargado que compara la cadena actual con la cadena proporcionada en la lista de parámetros del método. Si las dos cadenas son iguales, devuelve un valor verdadero; de lo contrario, devuelve un valor falso. El método equalsIgnoreCase es similar al método equals, pero compara cadenas independientemente del caso.
Por ejemplo, si utiliza el método igual y el método igualIgnoreCase en las siguientes declaraciones para comparar dos cadenas, entonces en la primera declaración, el resultado de la comparación es falso porque distingue entre mayúsculas y minúsculas; segunda declaración En esta declaración, el resultado de la comparación es verdadero porque no distingue entre mayúsculas y minúsculas:
string s1="Hello! World"; s2="hello! world"; boolean b1= s1.equals(s2);
boolean b2=s1.equalsIgnoreCase(s2);
Otra forma de comparar cadenas es compareTo(), que compara la cadena actual y cadena de argumento y devuelve un número entero. Si la cadena actual es exactamente la misma que la cadena del parámetro, el método compareTo() devuelve 0; si la cadena actual es alfabéticamente mayor que la cadena del parámetro, el método compareTo() devuelve un número entero mayor que 0; de lo contrario, si compareTo(; ) El método devuelve un número entero menor que 0, entonces la cadena actual es alfabéticamente más pequeña que la cadena del parámetro.
En el siguiente ejemplo, compareTo compara tres pares de cadenas. compareTo(s3);
Al ejecutar la declaración, a i, j y k se les asignan los valores 1, -1 y 0 respectivamente. Subcadena de caracteres de concatenación
public String concat(String str);
Este método concatena la cadena del parámetro hasta el final de la cadena actual y devuelve la cadena larga concatenada. Por ejemplo:
String s="¡Hola!"
System.out.println(s.concat("¡Mundo!")); . out.println(s);
Ejecuta:
¡Hola! ¡mundo! //La nueva cadena después de la concatenación
¡Hola! //La cadena original permanece sin cambios
2 StringBuffer
Otro objeto utilizado para implementar cadenas en Java Una clase es la clase StringBuffer, que es diferente de la clase String que implementa constantes de cadena. Los objetos de la clase StringBuffer pueden ampliar y modificar variables de cadena.
(1) Crear una variable de cadena - objeto StringBuffer
Dado que StringBuffer representa una cadena extensible y modificable, no es necesario dar un valor inicial al crear un objeto de clase StringBuffer. StringBuffer
El constructor de la clase StringBuffer es el siguiente:
public StringBuffer();
public StringBuffer(int length);
public StringBuffer (String str);
La primera función crea un objeto StringBuffer vacío. La segunda función proporciona la longitud del objeto StringBuffer recién creado y la tercera función inicializa el objeto StringBuffer con un objeto String existente.
Las siguientes declaraciones son ejemplos de creación de cadenas de tres maneras diferentes.
StringBuffer MyStrBuffer1=new StringBuffer();
StringBuffer MyStrBuffer2=new StringBuffer(5);
StringBuffer MyStrBuffer3=new StringBuffer("¡Hola chicos!" );
Cabe señalar que el primer objeto MyStrBuffer1 no tiene una unidad de memoria correspondiente y debe expandirse antes de poder usarse.
(2) Expansión, modificación y operación de variables de cadena
La clase StringBuffer tiene dos conjuntos de métodos, que se utilizan para expandir los caracteres contenidos en ella:
public StringBuffer append(tipo de objeto de parámetro nombre de objeto de parámetro);
inserción de StringBuffer público (int posición de inserción, tipo de objeto de parámetro nombre de objeto de parámetro);
El método append convierte el especificado objeto de parámetro en una cadena y se agrega a la cadena StringBuffer, mientras que el método insert inserta la cadena convertida desde el objeto de parámetro dado en la posición especificada. Los objetos de parámetros que se agregarán o insertarán pueden ser de varios tipos de datos, como int, double, char, String, etc. Vea el siguiente ejemplo:
StringBuffer MyStrBuff1=new StringBuffer();
MyStrBuff1 append("¡Hola chicos!");
System.out.println (MyStrBuff1.toString());
MyStrBuff1.insert(6, 30
System.out.println(MyStrBuff1.toString()); > El resultado de la implementación anterior es:
¡Hola a todos!
¡Hola, 30 chicos!
Cabe señalar que si desea mostrar un StringBuffer en la pantalla, primero debe llamar al método toString para convertirlo en una constante de cadena. porque PrintStream El método println () no acepta parámetros de tipo StringBuffer.
StringBuffer también tiene un método más útil para modificar cadenas:
public void setCharAt(int index, char ch);
Este método especificará el carácter de posición se reemplaza con otro carácter dado. Por ejemplo, la siguiente declaración cambia la cadena "goat" por "coat":
StringBuffer MyStrBuffer=new StringBuffer("goat");
MyBuff.setCharAt(0,' c ');
(3), Asignación y adición de cadenas
La cadena es un tipo de datos de uso común para facilitar la programación, el sistema de compilación Java introduce la adición y adición de cadenas. .
p>
String MyStr=new StringBuffer().append("Hola").toString();
MyStr=new StringBuffer().append(MyStr).append(" ¡Chicos!").toString();
Debido a que esta tarea simple y el método de escritura agregado son muy convenientes y prácticos, se usa ampliamente en la programación real.
3 Parámetros de la línea de comandos de las aplicaciones Java
Las aplicaciones Java se inician desde la línea de comandos, por lo que los parámetros de la línea de comandos se han convertido en un método común y eficaz para pasar datos a las aplicaciones Java. El siguiente ejemplo muestra cómo utilizar los parámetros de la línea de comandos.
Vea el programa de muestra UseComLParameter.java
Este ejemplo lee dos números enteros de la línea de comando usando parámetros de línea de comando, luego los multiplica y los genera. Suponiendo que el programa anterior se guarda como un archivo UseComLParameter.java y se compila para generar un archivo UseComLParameter.class, el formato de línea de comando para ejecutar el programa es el siguiente:
java UseComLParameter 52 -4
donde, java es el intérprete de Java utilizado para ejecutar el código de bytes, UseComLParameter es el nombre del archivo de código de bytes en ejecución (es decir, el nombre de la clase que se ejecutará), 52 y -4 son dos parámetros de línea de comando respectivamente.
Como puede ver, los parámetros de la línea de comando para Java siguen el nombre de la clase de la línea de comando principal y están separados por espacios. Si el parámetro de la línea de comando contiene espacios, puede encerrar todo el parámetro entre comillas dobles para distinguirlo. Por ejemplo, "un perro" es un parámetro de línea de comando completo.
La estructura de datos utilizada en las aplicaciones Java para aceptar argumentos de línea de comando es el parámetro args[] del método main(), que es una matriz de cadenas en la que cada elemento es una cadena. Parámetros de línea de comando ingresados por el usuario al ingresar el nombre de la clase. Cada cadena guarda un parámetro de línea de comando para que lo use el programa. Cada cadena contiene un parámetro de línea de comando para que lo use el programa, y la matriz args[] contiene múltiples elementos que indican cuántos parámetros de línea de comando ha ingresado el usuario. Otro punto a tener en cuenta es que todos los parámetros de la línea de comando existen como objetos de tipo cadena; si desea utilizar los parámetros como otros tipos de datos, debe realizar la conversión de tipo adecuada.
Como puede ver, los parámetros de la línea de comando son parámetros que proporcionan todo el programa. Cada vez que lo ejecuta con diferentes parámetros de línea de comando, se producirán diferentes resultados. El uso de parámetros de línea de comando puede aumentar la flexibilidad del programa. programa y adaptabilidad. Sin embargo, cuando utilice parámetros de línea de comando, debe prestar atención al problema de desbordamiento de la matriz. Cuando el programa se está ejecutando, el sistema verificará automáticamente cuántos usuarios han ingresado los parámetros de la línea de comando y los guardará uno por uno en args []. , si el programa no verifica cuántos usuarios se han incluido en Si se excede el número de parámetros de la línea de comando y se accede directamente a un determinado elemento de matriz de subíndice en args [], puede causar una excepción de que el límite de la matriz exceda el límite .