首先,我对android开发还不熟悉?什么工作正常:-我已经创建了一个计算器,其中用户输入数字使用编辑文本和选择运算符使用单选按钮。单击按钮时:-它创建值为edittext的变量double它返回受尊敬的答案(双倍)。问题来了:-如果用户在任何edittext中输入超过1点(.)ex-[5.5.2]&然后单击按钮,接下来发生的是一个你已经知道的想法?确切地!撞车!那么,有什么办法可以解决吗?有什么建议吗?
ubby3x7f1#
这不是android的问题,而是java的问题,不管怎样,您都必须从edittext获取文本作为字符串,然后检查字符串中的(点)计数
String line = EditText.getText.toString() int count = line.length() - line.replace(".", "").length();
现在,如果计数大于1,它将使崩溃,所以给用户messae和停止进程,否则做你想保存的
tpxzln5u2#
这也许不是最好的解决办法,但却是解决办法之一。你能做的是;当用户输入double值时,可以使用double.tostring()方法将其转换为字符串。然后可以检查它是否包含多个“.”(点)。假想是这样的。
value = get double value from EditText() str = value.toString() checkFlag = check(str) //Checks if there are more then one dot
然后根据checkflag值做出决定
2条答案
按热度按时间ubby3x7f1#
这不是android的问题,而是java的问题,不管怎样,您都必须从edittext获取文本作为字符串,然后检查字符串中的(点)计数
现在,如果计数大于1,它将使崩溃,所以给用户messae和停止进程,否则做你想保存的
tpxzln5u2#
这也许不是最好的解决办法,但却是解决办法之一。你能做的是;当用户输入double值时,可以使用double.tostring()方法将其转换为字符串。然后可以检查它是否包含多个“.”(点)。
假想是这样的。
然后根据checkflag值做出决定