回答:
のようなものを試してください
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に変換し、そのcharArrayをList <Character>に変換しようとしています
Java 9ではList#of
、不変リスト静的ファクトリメソッドであるの使用がより簡単になりました。
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>()
使用方法によっては冗長になる場合があります。(あなたの例のように;)