我是Java编程的新手,所以这是一个简单的问题。
我需要编写一个程序,将一个人的身高和体重作为输入作为一个字符串,其中高度和重量由空格分隔,例如:1.68 70
它计算并打印BMI(按公式重量/高度计算^ 2)。
我在互联网上读到,用户可以通过Scanner类完成输入, 这就是我用过的东西。现在我想在不同的变量中保存高度和重量,所以我可以将它们从字符串转换为Double,但我不知道如何做,因为整个输入是一个字符串。我习惯了Python和切片:( ..请帮忙?非常感谢。
答案 0 :(得分:2)
根据您在其他答案中的评论,看起来您已经使用了Scanner
。尝试这样的事情。
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Enter stuff");
double height = scanner.nextDouble();
double weight = scanner.nextDouble();
// do your stuff
}
答案 1 :(得分:1)
你走了。
How to split a String by space
这会将字符串拆分为任意数量的空白区域中的数组。返回值的数组。字符串中的第一个值将位于数组中位置[0],而第二个值位于[1]。
所以要将它与你的例子联系起来......
String value = "1.68 70";
String[] splitValues = value.split("\\s+");
Double height = Double.parseDouble(splitValues[0]);
Double weight = Double.parseDouble(splitValues[1]);