如何构建一个测试以确保用户在字符串内某处提供了小数点?字符串用户输入验证
回答
String userInput="123.23";
if(userInput!=null && unserInput.indexOf('.')!=-1)
{
//contains decimal point
}
一个简单的方法来做到这一点是与每个循环
char desiredCharacter = '.';
String myStr = getString(); //get a string somehow
boolean b = false;
for(char c : myStr.toCharArray())
if(c == desiredCharacter){
b = true;
break;
}
if(b){
//Character is in the string
}
else{
//Character is not in the string
}
这样,您就不必处理由外部方法提出了可能的低效率。另外,编写自己的方法的做法对发展有好处 - 我们不希望我们的大脑变得麻木,我们会吗?
如果您担心效率低下,是不是要走的路。 toCharArray()复制内部'char []'(它必须,为了维护String的不变性)。 – yshavit
是的,我想你可以使用Reflection来获得字符串的内部访问权限。不过,我认为这不会更快。我想用charAt()迭代单个字符可能会更快。另外,toCharArray()使用本地的System.arrayCopy(),大大提高了效率。 –
Um,复制一个数组然后迭代它(你的方法)永远不会比简单地遍历原来的(String.charAt所做的更快)。增加反射可能会带走一些成本(尽管它可能会减少一些优化,但不确定),但是现在,您正在竭尽全力重新发明一个实际上不需要重新创建的轮子。说“自己编写代码很好”是一回事,但我们不要假装还有其他理由要这样做。 – yshavit
- 1. 验证字符串用户输入
- 2. 验证用户输入字符串
- 3. 验证输入字符串
- 4. 验证字符串输入
- 5. C++验证用户输入为字符或字符串
- 6. 验证两个字符串之间的用户输入?
- 7. 如何验证用户在asp中输入字符串mvc4
- 8. 用户输入的C++字符串验证
- 9. 验证用户输入字符串在Python中
- 10. Ragel - 输入时验证字符串
- 11. 在Java中输入验证字符串
- 12. Java字符输入验证
- 13. 使用用户输入验证设置字符串的大型字典
- 14. 在用户输入验证 - Grails验证
- 15. Java输入错误。我不能验证字符串输入
- 16. 验证用户输入的字母
- 17. 验证数字用户输入
- 18. 为字母验证用户输入
- 19. Javascript验证用户输入
- 20. Javascript用户输入验证
- 21. 验证用户输入Monotouch
- 22. 验证用户输入
- 23. 验证用户输入C#
- 24. 验证用户输入?
- 25. 验证用户输入
- 26. Fortran77用户输入验证
- 27. 验证用户输入
- 28. 用户输入值验证
- 29. 验证用户输入
- 30. 验证用户输入或
在没有评论的情况下下调(或投票结束)问题并不能帮助海报改善问题。 – camickr
-1由于句子结构不好而且缺乏细节。另外,这是一个功课问题? –
@RyanAmos,问题简单而直接。你期待什么细节?根据目前的问题措辞,我们有两个很好的答案。 – camickr