En mi Cadena, puedo tener un número arbitrario de palabras separadas por comas. Quería agregar cada palabra a una ArrayList. P.ej:
String s = "a,b,c,d,e,.........";
Prueba algo como
List<String> myList = new ArrayList<String>(Arrays.asList(s.split(",")));
Arrays.asList
documentaciónString.split
documentaciónArrayList(Collection)
documentación del constructorManifestación:
String s = "lorem,ipsum,dolor,sit,amet";
List<String> myList = new ArrayList<String>(Arrays.asList(s.split(",")));
System.out.println(myList); // prints [lorem, ipsum, dolor, sit, amet]
Esta publicación ha sido reescrita como un artículo aquí .
new ArrayList<String>()
puede ser redundante dependiendo de cómo se utilice. (como en su ejemplo;)split
su después: PArrays.toString()
para imprimirlo, pero sí.fuente
replace = s1.replaceAll("^\\[|]$", "");
Option1 :
Option2 :
En mi opinión, Option1 es mejor porque
asList
método crea y devuelve un objeto ArrayList.Consulte la documentación aquí.
fuente
List<Character> word1 = new ArrayList<Character>(Arrays.asList(A[0].toCharArray()));
? Estoy tratando de obtener la primera cadena de una matriz de cadenas y convertir esa cadena en charArray y ese charArray en List <Character>En Java 9, el uso
List#of
, que es una lista inmutable de métodos de fábrica estáticos, se vuelve más simple.fuente
s.split("\\s*,\\s*")
se puede agregar para un cuidado adicionalSi está importando o tiene una matriz (de tipo cadena) en su código y tiene que convertirla en lista de matrices (cadena fuera de curso), entonces el uso de colecciones es mejor. Me gusta esto:
fuente
Ok, voy a extenderme sobre las respuestas aquí, ya que muchas de las personas que vienen aquí quieren dividir la cadena por un espacio en blanco . Así es como se hace:
fuente
Podrías usar:
Debería preguntarse si realmente necesita ArrayList en primer lugar. Muy a menudo, filtrará la lista en función de criterios adicionales, para los cuales un Stream es perfecto. Es posible que desee un juego; es posible que desee filtrarlos por medio de otra expresión regular, etc. Java 8 proporciona esta extensión muy útil, por cierto, que funcionará en cualquier
CharSequence
: https://docs.oracle.com/javase/8/docs/api /java/util/regex/Pattern.html#splitAsStream-java.lang.CharSequence- . Como no necesita la matriz en absoluto, evite crearla así:fuente
Si desea convertir una cadena en una ArrayList, intente esto:
Pero veo una matriz de cadenas en su ejemplo, por lo que si desea convertir una matriz de cadenas en ArrayList, use esto:
fuente
Más fácil de entender es así:
fuente
Esto está usando Gson en Kotlin
fuente
Tomemos una pregunta: invertir una cadena. Haré esto usando stream (). Collect (). Pero primero cambiaré la cadena a una ArrayList.
fuente
Recomiendo usar StringTokenizer, es muy eficiente
fuente
Si está usando guayaba (y debería hacerlo, vea el elemento efectivo de Java n. ° 15 ):
fuente