我把自己与这个问题的类型转换混淆了。
我有一个ArrayList
个字符,我想将其转换为字符串 - 一个字符数组。所以它是这样的:
ArrayList<Character> message = new ArrayList<Character>();
String stringMessage = new String;
stringMessage = message.toArray(stringMessage);
现在给出的错误是:
“语法错误,可能是缺少分号?”
这不是很有帮助。
我如何投出这个有什么问题吗?是否无法将ArrayList
个字符转换为String
?
答案 0 :(得分:0)
你可以这样做:
final CharBuffer buf = CharBuffer.allocate(message.size());
for (final Character c: message)
buf.put(c.charValue());
stringMessage = new String(buf.array());
您不能直接使用.toArray()
,因为它会返回Character[]
,而不是char[]
,并且没有String
构造函数接受Character[]
作为参数...