为什么Java只采用String格式的输入?

时间:2011-09-28 18:52:45

标签: java c

在java中,当我们从控制台获取输入时,我们得到一个String,即使我们想要一个整数作为输入,我们得到一个String格式的输入,然后我们使用几个方法,如Integer.parseInt()将它转换为整数格式。其中C / C ++也从控制台获取输入,但我们直接从控制台获取整数值,我们不需要转换它们的方法。那么为什么java遵循如此长的过程。 **这种Java架构背后的原因是什么?

//In java we follow the following process

public static void main(String args[])
{int i = Integer.parseInt( args[0]);// here we get input in String format and then convert it
}

//In C++ we follow the following :

void main()
{int i;
 cin>>i;
}
Both C/C++ and Java takes input form Console then why java takes it in String Format and C++ does not ??

4 个答案:

答案 0 :(得分:2)

查看java.util.Scanner,它可能会做你需要的:

http://download.oracle.com/javase/6/docs/api/java/util/Scanner.html

答案 1 :(得分:1)

Java - 如果使用Scanner类,则可以获取所需数据类型的输入。它不仅是String java接受的。

答案 2 :(得分:0)

如果从C中的控制台获取一个整数,则需要输入atoi()。

答案 3 :(得分:0)

从stdin读取时总是会得到一个字符串。但是,在C ++中,写入int时使用的>>运算符重载执行转换 - 所以它只是一种不同的转换方式,但在两种语言中都是必要的。

你说得对,它在C ++中更好,因为你可以使用几乎相同的代码,无论你有什么数据类型。