1. Los métodos para determinar que una cadena STR no está vacía son:
1. Str == nulo;
2. "" .Equals (str);
3. Str.length <= 0;
4. Str.isempty ();
Nota: La longitud es un atributo, que es una propiedad propiedad de un objeto de clase de colección, y obtiene el tamaño de la colección.
Por ejemplo: Array.length es para obtener la longitud de la matriz.
Longitud () es un método. En general, los objetos de clase de cadena tienen este método, que también obtiene la longitud de la cadena.
Por ejemplo: string.length ();
ilustrar:
1. NULL significa que esta cadena no apunta a nada.
2. "" Significa que apunta a una cadena de longitud 0, y es seguro llamar a su método en este momento.
3. NULL no es un objeto, "" es un objeto, por lo que NULL no tiene espacio asignado "," asigna espacio, por ejemplo:
Cadena str1 = nulo;
Cadena str2 = "";
STR1 aún no es un objeto instanciado, mientras que STR2 ha sido instanciado.
Los objetos se comparan con iguales, NULL se compara con el signo igual.
Si str1 = nulo;
if (str1.equals ("") || str1 == null) {}
La forma correcta de escribirlo es si (str1 == null || str1.equals ("")) {// Entonces, al juzgar si una cadena está vacía, primero determine si es un objeto. es una cadena vacía}
4. Por lo tanto, para determinar si una cadena está vacía, primero debe asegurarse de que no sea nula y luego juzgar su longitud.
Cadena str = xxx;
if (str! = null && str.length ()! = 0) {}
2. Los siguientes son cuatro métodos para que Java determine si una cadena está vacía:
La eficiencia de los cuatro métodos es la siguiente:
Judgestring1 Tiempo Tomado: 625 ms
Judgestring2 Tiempo tomado: 125 ms
Judgestring3 Tiempo Tomado: 234 ms
Judgestring4 Tiempo Tomado: 109 ms
La copia del código es la siguiente:
/**
* Creado con Idea IntelliJ.
* Usuario: Administrador
* Fecha: 14-1-16
* Hora: 10:43 am
* La eficiencia de determinar si una cadena está vacía
*/
clase pública JudgestringIsemptyOrnot {
public static void main (string [] args) {
Judgestring1 ("w_basketboy", 10000);
Judgestring2 ("w_basketboy", 10000);
Judgestring3 ("w_basketboy", 10000);
Judgestring4 ("w_basketboy", 10000);
}
/**
* Método 1: El método utilizado por la mayoría de las personas es intuitivo, conveniente, pero muy ineficiente;
* Método 2: Comparar longitudes de cadena es el mejor método;
* Método 3: El método proporcionado por Java SE 6.0 solo ha comenzado a proporcionar, la eficiencia y el método 2 son casi iguales, pero por razones de compatibilidad, se recomienda usar el método 2;
* Método 4: Este es un método relativamente intuitivo y simple, y la eficiencia también es muy alta, que es similar a la eficiencia de los métodos 2 y 3;
*/
Public static void juzgestring1 (string str, long num) {
Long Starttiem = System.CurrentTimemillis ();
para (int i = 0; i <num; i ++) {
para (int j = 0; j <num; j ++) {
if (str == null || "" .equals (str)) {
}
}
}
Long Time = System.CurrentTimemillis ();
System.out.println ("Function1 Time -Time -Consuming:" + (EndTime - StartTiem) + "MS");
}
Public static void juzgestring2 (string str, long num) {
Long Starttiem = System.CurrentTimemillis ();
para (int i = 0; i <num; i ++) {
para (int j = 0; j <num; j ++) {
if (str == null || str.length () <= 0) {
}
}
}
Long Time = System.CurrentTimemillis ();
System.out.println ("Function4 Consuming de tiempo:" + (EndTime - StartTiem) + "MS");
}
Public static void juzgestring3 (string str, long num) {
Long Starttiem = System.CurrentTimemillis ();
para (int i = 0; i <num; i ++) {
para (int j = 0; j <num; j ++) {
if (str == null || str.isempty ()) {
}
}
}
Long Time = System.CurrentTimemillis ();
System.out.println ("Function3 Consuming:" + (EndTime - StartTiem) + "MS");
}
Public static void juzgestring4 (string str, long num) {
Long Starttiem = System.CurrentTimemillis ();
para (int i = 0; i <num; i ++) {
para (int j = 0; j <num; j ++) {
if (str == null || str == "") {
}
}
}
Long Time = System.CurrentTimemillis ();
System.out.println ("Function4 Consuming de tiempo:" + (EndTime - StartTiem) + "MS");
}
}