Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android TextUtils.isDigitsOnly对于空字符串返回true_Android - Fatal编程技术网

Android TextUtils.isDigitsOnly对于空字符串返回true

Android TextUtils.isDigitsOnly对于空字符串返回true,android,Android,我使用上面的代码检查输入字符串是否为有效数字,但检查空字符串的isDigitOnly()function returntrue 如何使空字符串返回false,或者存在其他Android内置函数?如正确所述,这实际上是一个一直持续到今天的错误。看 您可以通过以下方式绕过此问题: Java android.text.TextUtils.isDigitsOnly("") 现在,您可以调用自己的自定义方法: boolean myIsDigitsOnly(String str) { retu

我使用上面的代码检查输入字符串是否为有效数字,但检查空字符串的
isDigitOnly()
function return
true

如何使空字符串返回
false
,或者存在其他Android内置函数?

如正确所述,这实际上是一个一直持续到今天的错误。看

您可以通过以下方式绕过此问题:

Java

android.text.TextUtils.isDigitsOnly("")  
现在,您可以调用自己的自定义方法:

boolean myIsDigitsOnly(String str) {
    return str.isEmpty() && TextUtils.isDigitsOnly(str); 
}
Kotlin

在Kotlin中,您根本不需要
TextUtils
。只需创建自己的扩展函数,如下所示:

myIsDigitsOnly(""); // returns false


感谢是谁启发我使Java变得更加简洁。

适用于Kotlin用户

虽然这是一个已经被接受的老问题,但建议通过以下代码改进Kotlin语言的答案

fun String.isDigitsOnly() = all(Char::isDigit) && isNotEmpty()
现在您可以像这样调用您的方法

fun String.myIsDigitsOnly(): Boolean {
   return TextUtils.isDigitsOnly(this) && this.isNotEmpty()
}


感谢您的回答和指向现有错误报告的位置。该漏洞创建于2012年1月。哇,在这里添加Kotlin代码是个好主意。我也这样做了,但使用了不同的方法+1.
"".myIsDigitsOnly() // returns false
"123523423".myIsDigitsOnly() // returns false