【发布时间】:2011-01-31 11:19:07
【问题描述】:
正如标题所说,我的 junit 测试通过检查字符是否不在字符串中以及如何检查空字符串是否没有字符时遇到问题。这是我的方法:
public static boolean isThere(String s, char value){
for(int x = 0; x <= s.length(); x++){
if(s.charAt(x) == value){
return true;
} else if(s.length() == 0){
return false;
}
}
return false;
这里是junit测试:
public void testIsThere() {
{
String sVal = "Jeff George";
boolean hasA = StringMethods.isThere(sVal,'e');
assertTrue(hasA);
boolean hasE = StringMethods.isThere(sVal, 'o');
assertTrue(hasE);
boolean notIn = StringMethods.isThere(sVal,'b');
assertTrue(notIn);
}
{
String sVal = "";
boolean nothingIn = StringMethods.isThere(sVal,'a');
assertFalse(nothingIn);
boolean notIn = StringMethods.isThere(sVal,'b');
assertFalse(notIn);
}
}
非常感谢,不胜感激
【问题讨论】:
-
isThere() 更好的名字是 containsChar()
-
一些格式更好的代码和更清晰的解释究竟是什么不工作会帮助我们帮助你。
-
我想你只是想
assertFalse(notIn) -
你到底想在这里实现什么?您只是在复制已经存在的功能。
-
应该是assertFalse,你是对的,这是我的打字错误,谢谢