谁能帮助我并告诉我如何将 char
数组转换为列表,反之亦然。我正在尝试编写一个程序,其中用户输入一个字符串(例如 "Mike is good"
)并在输出中,每个空格都替换为 "%20"
(即 "Mike%20is%20good"
) .虽然这可以通过多种方式完成,但由于在链表中插入和删除需要 O(1) 时间,我想用链表尝试它。我正在寻找将 char
数组转换为列表,更新列表然后将其转换回来的方法。
public class apples
{
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
StringBuffer sb = new StringBuffer(input.nextLine());
String s = sb.toString();
char[] c = s.toCharArray();
//LinkedList<char> l = new LinkedList<char>(Arrays.asList(c));
/* giving error "Syntax error on token " char",
Dimensions expected after this token"*/
}
}
所以在这个程序中,用户正在输入字符串,我将其存储在 StringBuffer
中,我首先将其转换为字符串,然后转换为 char
数组,但我不是能够从 --- 获取列表 l
s
。
如果有人能告诉我将 char
数组转换为列表的正确方法,我将不胜感激,反之亦然。
原文由 bourne 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 Java 8 及更高版本中,您可以使用
String
的方法chars()
:如果您需要将
char[]
转换为List<Character>
,您可以先从中创建一个String
,然后应用上述解决方案。虽然它不会非常可读和漂亮,但它会很短。