Java - 将字符串转换为字符[]
问题描述:
我需要一些帮助来处理我的代码。我想使用toCharArray()方法将一个String对象转换为一个char [],但是我无法使它工作。Java - 将字符串转换为字符[]
我有一类名为单词表这一功能:
static public char[] Contains(String w)
{
if (list.contains(w)) return w.toCharArray();
else return null;
}
我呼吁与字符串变量RES功能:
char[] result = new char[4];
result = WordList.Contains(res);
然后好像返回null,因为结果的值一片空白。但如果更改包含以下内容:
static public char[] Contains(String w)
{
if (list.contains(w)){
System.out.println(w.toCharArray());
}
else return null;
}
然后它打印字符串。这怎么可能?我的功能有什么问题?
答
我不知道你想实现什么,但:
一)阅读有关Java命名约定
B)列出<>(和其他几个java.util中)有一个方法称为.contains(所以调用你的包含导致混淆)
c)你真的想在你的“Contains”方法中返回null吗?
d)名单(我想你的意思的java.util.List)是从未宣布过,也没有初始化
E)我相信资源是一个字符串。它永远不会被声明为未初始化。
这应该给你一个想法:
public static void main(String args[])
{
String str = "someString";
List<String> list = new ArrayList<String>();
list.add(str);
char[] charArray = containsString(str,list);
System.out.println(charArray);
}
public static char[] containsString(String str, List<String> list)
{
if (list.contains(str)) return str.toCharArray();
else return null;
}
什么是'list'的类型? “res”的价值是什么? – 2013-04-22 17:36:39
只是一个注释,你不需要初始化结果,因为你在下一行分配它 – eldris 2013-04-22 17:37:54
'if(list.contains(w))'没有返回任何东西 - >将不会编译 – Puce 2013-04-22 17:38:15