2016-11-28 88 views
-1

我是学习Java的新手,被解释为每个变量都需要声明。为什么我不需要分两步做?Java Static typing

int a = Integer.parseInt(console.readLine("How old are you? ")); 
console.printf("a: %d", a); 
+3

你能解释一些吗?我不确定你对此感到困惑。 – 4castle

+2

为什么*你*需要在两个步骤中做到这一点,在你的脑海里?如果我们知道是什么让你首先想到这一点,那更容易解释。 –

+0

我认为这需要分两步完成的原因是静态打字。 console.readLine的响应没有被声明。 – n2java

回答

0

你不需要声明一个变量,但是当你这样做的时候,你必须指定一个类型(或右边的超类型)。

console.readLine("How old are you? ")的返回值是一个String,printf可以将其作为一个参数,所以没有缺少的类型信息。

0

没有什么阻止你在一行中写它,即

console.printf("a: %d", Integer.parseInt(console.readLine("How old are you? "))); 

这将没有任何问题的工作。将其写入一行成为首选/可读性的问题,并且在打印之前是否要对变量进行任何操作...

至于您的评论,您可以检查documentationconsole.readLine()返回String