2011-12-21 62 views
12

me gustaría eliminar todos los elementos de la matriz String por ejemplo:¿Cómo eliminar todos los elementos en String array en java?

String example[]={"Apple","Orange","Mango","Grape","Cherry"}; 

¿Hay alguna sencilla de hacerlo, cualquier fragmento en que será helpful.Thanks

+0

Eliminar de qué? ¿Desea eliminar de la matriz de ejemplos []? ¿O tiene otra matriz en la que desea eliminar los elementos presentes en la matriz de ejemplo? – CoolBeans

+0

eliminar todos los elementos ..... – Karthik

+0

Posible duplicado: http://stackoverflow.com/questions/112503/how-do-i-remove-objects-from-an-array-in-java – tenorsax

Respuesta

42

Si es examplenofinal luego una reasignación sencilla funcionaría:

example = new String[example.length]; 

Esto supone que necesita la matriz para seguir siendo el mismo tamaño. Si eso no es necesario entonces crear una matriz vacía:

example = new String[0]; 

Si esfinal entonces se podría null a cabo todos los elementos:

Arrays.fill(example, null); 
+1

El primer enfoque (reasignación) solo debe preferirse si debe hacerse una o dos veces o varias veces. De lo contrario, cada vez terminará asignando memoria para nuevas matrices. Además, el segundo enfoque no se puede usar para matrices primitivas. – milanchandna

7
example = new String[example.length]; 

Si necesita recopilación dinámica, debería considerar usar una de las implementaciones java.util.Collection que se adapte a su problema. P.ej. java.util.List.

2

Volver a asignar. Como example = new String[(size)]

1

Por lo general, alguien utiliza colecciones si algo cambia con frecuencia.

E.g.

List<String> someList = new ArrayList<String>(); 
    // initialize list 
    someList.add("Mango"); 
    someList.add("...."); 
    // remove all elements 
    someList.clear(); 
    // empty list 

Un ArrayList por ejemplo utiliza un respaldo de Array. El cambio de tamaño y esto se maneja automáticamente. En la mayoría de los casos, esta es la forma adecuada.

4

list.clear() está documentado para borrar ArrayList.

list.removeAll() no tiene documentación en absoluto en Eclipse.

Cuestiones relacionadas