如何测试char是否不在字符串中? (java,junit)
发布时间:2020-12-15 01:59:39 所属栏目:Java 来源:网络整理
导读:正如标题所说,即时通讯我的junit测试有问题,检查字符是否不在字符串中以及如何检查空字符串是否没有字符.这是我的方法: public static boolean isThere(String s,char value){ for(int x = 0; x = s.length(); x++){ if(s.charAt(x) == value){ return true
正如标题所说,即时通讯我的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); } } 非常感谢,谢谢 解决方法
请改用String.indexOf():
public static boolean contains(String s,char value){ return s != null && s.indexOf(value) > -1; } String sVal = "Jeff George"; assertTrue(contains(sVal,'e')); sVal = null; assertFalse(contains(sVal,'e')); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |