Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.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
Java 如何从字符串对象中获取数字?_Java_Android_Kotlin_Mobile - Fatal编程技术网

Java 如何从字符串对象中获取数字?

Java 如何从字符串对象中获取数字?,java,android,kotlin,mobile,Java,Android,Kotlin,Mobile,如何从该字符串中获取“9”并将值放入长对象中 "["pusher-decision-voting-started",9]" 我尝试将字符串转换为Json对象,但我无法使用它嗯,我不知道所有的上下文和全部要求,但我会尝试这样做 long extractedValue = Long.valueOf(StringUtils.substringsBetween("[", "]").split(",")[1]); or the java 8 Streams method Long.valueOf(inp

如何从该字符串中获取“9”并将值放入长对象中

"["pusher-decision-voting-started",9]"

我尝试将字符串转换为Json对象,但我无法使用它

嗯,我不知道所有的上下文和全部要求,但我会尝试这样做

long extractedValue = Long.valueOf(StringUtils.substringsBetween("[", "]").split(",")[1]);
or the java 8 Streams method
Long.valueOf(input.codePoints().filter(Character::isDigit).mapToObj(String::valueOf).collect(Collectors.joining("")));

但是我建议在单数之前做一些检查:

val expression = "\"[\"pusher-decision-voting-started\",9]\""

val result : Long? = expression.firstOrNull { it.isDigit() }
       ?.toString()
       ?.toLong()
val expression2 = "\"[\"pusher-decision-voting-started\",92]\""

val result2 : Long? = expression2.filter { it.isDigit() }
       .takeIf { it.isNotEmpty() }
       ?.toLong()
坏习惯:如果你想搜索超过1位数的数字,会产生不好的结果

多个数字

val expression = "\"[\"pusher-decision-voting-started\",9]\""

val result : Long? = expression.firstOrNull { it.isDigit() }
       ?.toString()
       ?.toLong()
val expression2 = "\"[\"pusher-decision-voting-started\",92]\""

val result2 : Long? = expression2.filter { it.isDigit() }
       .takeIf { it.isNotEmpty() }
       ?.toLong()
坏习惯:如果数字不接近,将产生错误的结果


这两个结果都适用于缺失的数字。我希望它适合你的情况。

嗨!使用库,例如。如果你在这方面遇到了问题,可以在这个网站上问一个具体的问题:)你同时标记了Kotlin和Java。您想要哪个?通过有效检查,它将更具可读性,例如,如果字符串是这样的“[“pusher decision voting started”]”,它将在Split上引发异常。这只是一个很好的示例