这是我的解决方案代码没有问题
public boolean hasAdjacentRepeats(String s){
for(int i = 0; i<s.length(); i++){
if(s.charAt(i) == s.charAt(i + 1)){
return true;
}
}
return false;
}
但是我的解决方案代码就像
@Test public void tests6(){
code.Solution s = new code.Solution();
String input = "hhhhhey ";
int expected = true;
int actual = s.hasAdjacentRepeats(input);
assertTrue("Expected was" +true+"but the actual was" +false , expected == actual);
}
第一个错误是真的。 eclipse显示更改预期为boolean的类型
第二个错误是int actual = s.hasAdjacentRepeats(input)
与上述问题相同。
所以我不知道修复我的解决方案代码的适当方法是什么。
答案 0 :(得分:0)
Java不支持从boolean
到int
的隐式转换(例如,c就是这样。因此,应该定义expected
和actual
作为boolean
s,而不是int
s。
在不相关的说明中,由于您正在评估s.charAt(i + 1)
,因此您的循环应该以{{1}}结束,而不是s.length() - 1
,否则您将获得s.length()
1}}。