我需要获取字符串java android

问题描述 投票:0回答:1

输入字符串 s = "100.0 + 50.0 + 20.0"

所需输出总和 = 170.0

我尝试了多种转换和数据类型,但没有按预期工作,甚至检查了堆栈溢出和其他站点,但仍然不确定如何执行此操作。 我尝试了多种转换和数据类型,但没有按预期工作,甚至检查堆栈溢出和其他站点,但仍然不确定如何执行此操作。

java android sum logic
1个回答
0
投票

您可以将字符串

split
分成更小的字符串然后进行处理。

String input = "100.0 + 50.0 + 20.0";
String[] parts = input.split(" "); // split where there is a space

分裂的结果将是

[100.0 , + , 50.0 , + , 20.0] 

现在,您可以处理数字并忽略“+”号。

double sum = 0.0;
for(String s : numbers){
     if(s.equals("+") || s.isEmpty())
         continue; // ignore spaces and + sign
     double number = Double.parseDouble(s);   // convert others to double
     sum += number;  // calculate the sum
}
System.out.println(sum);

注意:如果输入的数字之间没有空格,即如果输入类似于“150+70+20”,则此方法将不起作用。这是非常基本的方法,如果您有复杂的用例,最好使用一些库。

© www.soinside.com 2019 - 2024. All rights reserved.