又是理解 Java 的问题。当我问上一个关于Java 中的 Hello world 与 python 的问题时,我收到了将这门语言视为理所当然的建议,直到我没有掌握它。但是,我不能采用这种方法,并且对 Java 与 python 中的一些奇怪的事情感到困惑。
这是从用户那里获取输入并在 python 中将 F 转换为摄氏度的程序。
def main ():
fahr = input (" Enter the temperature in F: ")
cel = ( fahr - 32) * 5.0/9.0
print " the temperature in C is : " , cel
这非常简单,内部没有任何古怪的事情。
在 Java 中做同样事情的例子:
import java . util . Scanner ;
public class TempConv {
public static void main ( String [] args ) {
Double fahr ;
Double cel ;
Scanner in ;
in = new Scanner ( System . in );
System . out . println (" Enter the temperature in F: " );
fahr = in . nextDouble ();
cel = ( fahr - 32) * 5.0/9.0;
System . out . println (" The temperature in C is : " + cel );
System . exit (0);
}
}
我认为应该发生的是:Scanner 是 Java 类/类/对象的实例,用于获取用户输入并使用
Scanner in
创建了一个新对象来接受用户输入。事实证明,我们只是在 Java 中声明为 Scanner 类型(如果我错了,请纠正我)。
现在,如果它是 python,我们将调用新创建的 Scanner 对象的方法,该对象从用户那里获取输入。OMG,Java 中这是什么?我们创造
新扫描仪
对象并System.in
作为参数传递并将其分配给
在
再次?
有人可以用pythonic术语向我解释一下,这里发生了什么以及它如何以及为什么与python有很大不同?
任何创造性的建议表示赞赏。