所以,我想知道它之间的区别是什么:
first = "Hello!"
和
String first = "Hello!"
答案 0 :(得分:10)
前者指定一个声明的变量;后者声明并赋予变量。
答案 1 :(得分:1)
我不这么认为:
first="Hello!"
将编译,因为编译器将抛出一个错误,询问第一个类型。 Java是一种强类型语言 - 每个变量都需要一个定义良好的类型。我暂时忽略像E这样的通用类型......
答案 2 :(得分:1)
不确定你在问什么。在您的第一个示例中:first = "Hello!"
您没有声明first
,因此如果您只运行该行代码,则无效。假设您将first
声明为String,则两个示例都相同。并且没有与string
和int
类似的原始Integer
类型。字符串始终是一个对象。
答案 3 :(得分:1)
first = "Hello!"
将无法正确编译,因为它没有类型。在Java中,当您创建变量(在此实例中称为“first”)时,必须为其指定一个类型,如String,int,long等等。因为没有给出类型,它不知道该怎么做。因此,在创建变量时,必须使用String first = "Hello!"
在声明变量时,您不需要提供类型。例如,
String first = "Hello!"
first = "Goodbye!"
现在首先是“再见!”
答案 4 :(得分:0)
乍一看没有别的区别,第一个变量在另一行声明可能是一个实例变量?
在内存中,字符串被合并,应该是它。