【发布时间】:2014-11-12 16:25:31
【问题描述】:
在我的程序中,我想确保一个字符串(字符数组)只有特定字符(或不同字符的特定计数,没有更多),所以我编写了这段代码,但这里有个问题,它不起作用正确。
示例:如果我们有这个 char 数组来检查“hello”,并且我们想确保它只有“ollhevi”或更少,它应该返回 true。
或者更好的:
单词 = {'h','e','l','l','o'}
想要 = {'a','o','h','l'}
返回错误
因为你好没有'a';
理论上它是有效的。
代码
public boolean check(ArrayList<Character> words, ArrayList<Character> wanted) {
for (Character chr : words) {
if (wanted.contains(chr)) {
wanted.remove(chr);
} else {
return false;
}
}
return true;
}
【问题讨论】:
-
你的例子不清楚...
-
你试过
wanted.removeAll(words); return wanted.isEmpty(); -
是的,但它对我的问题不起作用,因为字符数对我来说很重要,例如想要的是 'a''a''b' 但单词是 'a''b''b'这个命令会删除所有
-
请说明您是如何创建列表的。我已经测试了你的方法并且它有效。至少对于你的例子。
标签: java arrays arraylist char