Java system.out.prinln()中的正确语法
今天开始学习Java,我需要帮助来澄清我的疑问Java system.out.prinln()中的正确语法,java,Java,今天开始学习Java,我需要帮助来澄清我的疑问 import java.util.Scanner; public class JavaApplication1 { public static void main(String[] args) { Scanner leo = new Scanner(System.in); double f, s; System.out.println("Enter first number: ");
import java.util.Scanner;
public class JavaApplication1 {
public static void main(String[] args) {
Scanner leo = new Scanner(System.in);
double f, s;
System.out.println("Enter first number: ");
f = leo.nextDouble();
System.out.println("Enter second number: ");
s = leo.nextDouble();
System.out.println("The sum is " + f + s);
}
}
当我写+f+s
时,两者都被视为字符串
Enter first number: 2
Enter second number: 5
The sum is 2.05.0
但是当我写(f+s)
时,它们被视为双倍(这是期望的结果)
为什么会这样
另外,为什么我们要在类javaaaapplication1
之前编写行import java.util.Scanner
另外,这一系列视频对学习Java有好处吗?我想重要的是操作顺序 在 第一个操作是
“总和是:“+f
”,因此+运算符将字符串和双精度作为操作数,并将f变量转换为其字符串值。然后第二个+运算符取“和为:2”+0.5,我们再次从double转换为string
然而,在
System.out.println("The sum is:"+(f+s))
我们首先计算f+s,这是两个二重数之间的加法,然后是串联
我希望这是有意义的。这是代表括号、顺序、除法、乘法、加法、减法的规则
因为您没有将它们添加到括号中,所以它会添加(连接)字符串。它评估括号内的所有内容
("string" + f + s)
除非你特别加上括号
("string" + (f + s))
在这种情况下,先评估内部支架,然后评估外部支架
还有,为什么我们要在
类java应用程序1
为了在类中使用导入的内容,您需要在类之前导入,因此编译器知道。它不被视为字符串。由于+运算符是从左到右计算的,因此它首先将您的字符串和第一个数字相加,然后将第二个数字相加到结果字符串中。请编辑您的问题,将相关源代码作为文本包含在问题中。不要链接到其他站点上的代码(或代码图片)。
import
必须使用Scanner
而不使用其软件包名称。编译器将使用java.util.Scanner
来“替换”对Scanner
的所有引用。您可以删除import
,只需在局部变量声明和对象实例化中使用java.util.Scanner
。
("string" + f + s)
("string" + (f + s))