java - 水的状态 - 摄氏度和华氏度 Java

标签 java temperature

基本上,任务是:我应该输入一个温度值,后跟一个空格和字母 C(代表摄氏度)或 F(代表华氏度),例如:“-12 C”或“165 F”,输出应该是水的状态处于输入的温度。本练习中冰的熔点为 32 华氏度,水的沸点为 212 华氏度。我被困在如何获取摄氏度或华氏度的输入以及如何更新我的下面的代码以适应沸点华氏度也是如此。到目前为止我的代码:

public static void stateOfWater(){
     System.out.println("Please enter a temperature value in Celcius or Fahrenheit : ");
    Scanner input = new Scanner (System.in);
    int x = input.nextInt(); 

    if (x <= 0)
        System.out.println("Water is solid at " + x );

    else if (100 <= x )
        System.out.println("Water is gaseous at " + x );

    else 
        System.out.println("Water is liquid at " + x  );
    input.close();

    }

谢谢你:)。

最佳答案

您需要检测输入是摄氏度还是华氏度。一种方法是:

String str = input.nextString();
if (str.contains("F") || str.contains("f") {
    //It's fahrenheit. process accordingly.
} else {
    //default to celsius.  process accordingly.
}

如果没有检测到任何内容,此代码将回退到摄氏度。

关于java - 水的状态 - 摄氏度和华氏度 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34858581/

相关文章:

java - Apache Felix OSGI 中不存在软件包

java - 如何在不设置 -Xmx 标志的情况下限制堆消耗

java - 缓存失效 Postgres NOTIFY 与轮询

Arduino 温度传感器

java - 如何获取 PC 主板的温度(以及其他硬件统计数据)?

c - 在华氏、摄氏和开尔文之间转换的程序

java - checkstyle JavadocType 仅在类/接口(interface)/枚举上

java - final 字段的线程安全

C# CPU 和 GPU 温度

c - 如何将值转换为传感器的温度?