在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 ??
答案 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 ++中更好,因为你可以使用几乎相同的代码,无论你有什么数据类型。