답변:
다음과 같은 시도
List<String> myList = new ArrayList<String>(Arrays.asList(s.split(",")));
데모:
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]
이 게시물은 여기 에 기사로 다시 작성되었습니다 .
split
자신의 후 : P
Arrays.toString()
그것을 인쇄하기 위해 사용해야 할 것이지만 그렇습니다.
String s1="[a,b,c,d]";
String replace = s1.replace("[","");
System.out.println(replace);
String replace1 = replace.replace("]","");
System.out.println(replace1);
List<String> myList = new ArrayList<String>(Arrays.asList(replace1.split(",")));
System.out.println(myList.toString());
replace = s1.replaceAll("^\\[|]$", "");
옵션 1 :
List<String> list = Arrays.asList("hello");
옵션 2 :
List<String> list = new ArrayList<String>(Arrays.asList("hello"));
제 생각에는 Option1이 더 좋습니다.
asList
메소드는 ArrayList 객체를 생성하고 반환합니다.List<Character> word1 = new ArrayList<Character>(Arrays.asList(A[0].toCharArray()));
문자열 배열의 첫 번째 문자열을 얻고 해당 문자열을 charArray로 변환하고 해당
Java 9에서는 List#of
Immutable List Static Factory Methods 인를 사용 하는 것이 더 간단 해졌습니다.
String s = "a,b,c,d,e,.........";
List<String> lst = List.of(s.split(","));
s.split("\\s*,\\s*")
추가 관리를 위해 추가 가능
다음을 사용할 수 있습니다.
List<String> tokens = Arrays.stream(s.split("\\s+")).collect(Collectors.toList());
처음에 ArrayList가 정말로 필요한지 스스로에게 물어봐야합니다. 매우 자주, 추가 기준에 따라 목록을 필터링 할 것입니다. 세트를 원할 수 있습니다. 다른 정규 표현식 등을 사용하여 필터링 할 수 있습니다. Java 8은 다음과 같은 매우 유용한 확장 기능을 제공합니다 CharSequence
. https://docs.oracle.com/javase/8/docs/api /java/util/regex/Pattern.html#splitAsStream-java.lang.CharSequence- . 배열이 전혀 필요하지 않으므로 다음과 같이 생성하지 마십시오.
// This will presumably be a static final field somewhere.
Pattern splitter = Pattern.compile("\\s+");
// ...
String untokenized = reader.readLine();
Stream<String> tokens = splitter.splitAsStream(untokenized);
문자열 을 ArrayList 로 변환하려면 다음을 시도하십시오.
public ArrayList<Character> convertStringToArraylist(String str) {
ArrayList<Character> charList = new ArrayList<Character>();
for(int i = 0; i<str.length();i++){
charList.add(str.charAt(i));
}
return charList;
}
하지만 귀하의 예제에서 문자열 배열을 볼 수 있으므로 문자열 배열 을 ArrayList 로 변환 하려면 다음을 사용하십시오.
public static ArrayList<String> convertStringArrayToArraylist(String[] strArr){
ArrayList<String> stringList = new ArrayList<String>();
for (String s : strArr) {
stringList.add(s);
}
return stringList;
}
Kotlin에서 Gson을 사용하고 있습니다.
val listString = "[uno,dos,tres,cuatro,cinco]"
val gson = Gson()
val lista = gson.fromJson(listString , Array<String>::class.java).toList()
Log.e("GSON", lista[0])
질문을합시다 : 문자열을 뒤집습니다. 나는 stream (). collect ()를 사용하여 이것을 할 것이다. 하지만 먼저 문자열을 ArrayList로 변경합니다.
public class StringReverse1 {
public static void main(String[] args) {
String a = "Gini Gina Proti";
List<String> list = new ArrayList<String>(Arrays.asList(a.split("")));
list.stream()
.collect(Collectors.toCollection( LinkedList :: new ))
.descendingIterator()
.forEachRemaining(System.out::println);
}}
/*
The output :
i
t
o
r
P
a
n
i
G
i
n
i
G
*/
구아바를 사용하는 경우 ( 유효한 Java 항목 # 15 참조 ) :
ImmutableList<String> list = ImmutableList.copyOf(s.split(","));
new ArrayList<String>()
사용 방법에 따라 중복 될 수 있습니다. (당신의 예에서와 같이)