Java集合将字符串转换为字符列表
我想将包含的字符串转换为字符abc
列表和字符哈希集。如何在Java中做到这一点?
List<Character> charList = new ArrayList<Character>("abc".toCharArray());
回答:
您将不得不使用循环,或创建一个像Arrays.asList
这样的集合包装器,该包装器可用于原始char数组(或直接用于字符串)。
List<Character> list = new ArrayList<Character>();Set<Character> unique = new HashSet<Character>();
for(char c : "abc".toCharArray()) {
list.add(c);
unique.add(c);
}
这是一个Arrays.asList
类似字符串的包装器:
public List<Character> asList(final String string) { return new AbstractList<Character>() {
public int size() { return string.length(); }
public Character get(int index) { return string.charAt(index); }
};
}
不过,这是一个不变的列表。如果您想要一个可变的列表,请使用char[]
:
public List<Character> asList(final char[] string) { return new AbstractList<Character>() {
public int size() { return string.length; }
public Character get(int index) { return string[index]; }
public Character set(int index, Character newVal) {
char old = string[index];
string[index] = newVal;
return old;
}
};
}
与此类似,您可以为其他原始类型实现此功能。
所述番石榴库包含几个基本数组类相似列表包装方法,像Chars.asList,并在弦乐的包装Lists.charactersOf(字符串)。
以上是 Java集合将字符串转换为字符列表 的全部内容, 来源链接: utcz.com/qa/421787.html