【发布时间】:2013-03-13 12:14:10
【问题描述】:
谁能帮助我,告诉我如何将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数组转换为列表的正确方法,我将不胜感激。
【问题讨论】:
-
你不能为你的列表使用原始数据类型,你需要 Character intead。但是,您的方法不起作用,因此请使用例如ArrayUtils.toObject(char[]) 来自Apache Commons。
-
这里是Convert Char Array To String In Java的文章,这将帮助您回答您的问题
标签: java list stringbuffer