Kab*_*ltv 6 java java.util.scanner
我正在尝试阅读一行,然后进入if语句.但是在第一次输入红色后它就会终止.我不知道出了什么问题,我无法弄明白
import java.util.Scanner;
public class mainen {
public static void main(String[] args) {
Formler form = new Formler();
Scanner Sscan = new Scanner(System.in);
Scanner Dscan = new Scanner(System.in);
String input;
System.out.println("Formler: Molmassa");
input = Sscan.nextLine();
if(input == "molmassa" || input == "Molmassa"){
double m;
double M;
System.out.println("Massa: "); m = Dscan.nextDouble();
System.out.println("Molmassa: "); M = Dscan.nextDouble();
System.out.println(form.getMolmassa(m, M));
}
}
}
Run Code Online (Sandbox Code Playgroud)
将您的if陈述更改为:
if(input.equalsIgnoreCase("molmassa") ) { }
Run Code Online (Sandbox Code Playgroud)
然后它应该按预期工作.请记住始终使用equals()或equalsIgnoreCase()方法比较字符串.==比较对象引用而不是实际值.
if(input == "molmassa" || input == "Molmassa"){}
Run Code Online (Sandbox Code Playgroud)
你应该将String对象与equals方法或equalsIgnoreCase方法等同起来。
if(input.equalsIgnoreCase("Molmassa")){}
Run Code Online (Sandbox Code Playgroud)
==用于原始相等检查。
| 归档时间: |
|
| 查看次数: |
170 次 |
| 最近记录: |