我正在尝试实现一个函数来比较5个字母的字符串和一个char数组,并通过比较字符串的每个字符与数组的每个字符来匹配它们
当我尝试使用它时,它总是会返回类似[C@bebf1eb
这是我的功能:
static String matching(String myWord1, char[] word_taken) {
char result[] = new char[5];
int k = 0;
char[] myWord = myWord1.toCharArray();
for (int i = 0; i < myWord.length; i++) {
for (int j = 0; j < word_taken.length; j++) {
if (myWord[i] == word_taken[j]) {
result[k] = myWord[i];
k++;
break;
}
}
}
return result.toString();
}
答案 0 :(得分:4)
当我尝试使用它时,它总会返回类似[C @ bebf1eb
的内容
是的,不会覆盖数组的toString()
方法,因此您获得了default implementation。
使用带有char数组的字符串constructor。
return new String(result);
<小时/> 如果要在创建String时避免重新复制数组的内容,可以使用
StringBuilder
并在需要时将char附加到其中。
最后,只需返回myStringBuilder.toString();
答案 1 :(得分:0)
是的我也面临同样的问题,并通过创建字符串对象
获得正确的结果return new String(result);