Java 在一行上声明多个变量的顺序不正确
我最近在一些Java代码中看到了这一点:Java 在一行上声明多个变量的顺序不正确,java,Java,我最近在一些Java代码中看到了这一点: int pos = -1, ch; 那和我的一样吗 int pos, ch = -1; ?否,第一个代码段仅使用-1初始化pos,而不初始化ch。第二种方法则相反,将pos保留为未初始化状态,并将ch的值设置为-1。但是在任何一种情况下,都将创建ch和pos,您将能够设置或更新它们的值。否,第一个代码段仅使用-1初始化pos,而不初始化ch。第二种方法则相反,将pos保留为未初始化状态,并将ch的值设置为-1。但是在任何一种情况下,ch和pos都将被
int pos = -1, ch;
那和我的一样吗
int pos, ch = -1;
?否,第一个代码段仅使用
-1
初始化pos
,而不初始化ch
。第二种方法则相反,将pos
保留为未初始化状态,并将ch
的值设置为-1
。但是在任何一种情况下,都将创建ch
和pos
,您将能够设置或更新它们的值。否,第一个代码段仅使用-1
初始化pos
,而不初始化ch
。第二种方法则相反,将pos
保留为未初始化状态,并将ch
的值设置为-1
。但是在任何一种情况下,ch
和pos
都将被创建,您将能够设置或更新它们的值。我会说是的……唯一的区别是您正在初始化什么(在第一条语句中,您将值赋给第一个变量,而另一个变量保持不变,因此只有第一个变量初始化为值,而另一个变量保持为int类型的引用变量)第二条语句也是如此
如果你说:
int x=10,y;
这里x被初始化为值10,y被初始化为默认值(即0,但编译器将抛出编译错误“变量y可能尚未初始化!”)
但是如果你说
int x,y=10;
然后将x设置为默认值(即再次编译将抛出编译错误变量x未初始化!),将y设置为值10
这里不重要的是x和y的出现顺序。希望澄清!:D我会说是的…唯一的区别是你初始化的是什么(在第一条语句中,您将值赋给第一个变量,而另一个变量保持不变,因此只有第一个变量初始化为值,而另一个变量保持为int类型的引用变量)第二条语句也是如此 如果你说:
int x=10,y;
这里x被初始化为值10,y被初始化为默认值(即0,但编译器将抛出编译错误“变量y可能尚未初始化!”)
但是如果你说
int x,y=10;
然后将x设置为默认值(即再次编译将抛出编译错误变量x未初始化!),将y设置为值10
这里不重要的是x和y的出现顺序。希望澄清!:D在两行中都创建了两个变量。在第一行中,只有
pos
初始化为-1,在第二行中,只有ch
初始化为-1。在使用未初始化的变量之前,应为其分配一些值它们。在两行中都创建了两个变量。在第一行中,只有pos
用-1初始化,在第二行中,只有ch
用-1初始化。在使用未初始化的变量之前,应该为它们指定一些值。您不能说“是的,它们是相同的”当你接着解释它们为什么不一样时。我不确定你指的是什么,因为我试着解释我为什么说是……你说是,然后解释为什么答案是否定的,因为它们不一样。很明显,用户指出了两条语句并问到“它们是一样的”所以说“不”很明显因为它们是两个语句,但我接受了编程上下文,为什么它们是相同的…(如何声明变量)不管怎么说,用户已经有了ans…所以谢谢你把那个点指向我…:DIt仍然不正确。如果它被初始化为零,为什么编译器会抛出错误?你仍然说是,即使它们与你解释的不一样。为什么不说“不,它们不一样,因为…”?你不能说“是的,它们是一样的”当你接着解释它们为什么不一样时。我不确定你指的是什么,因为我试着解释我为什么说是……你说是,然后解释为什么答案是否定的,因为它们不一样。很明显,用户指出了两条语句并问到“它们是一样的”所以说“不”很明显因为它们是两个语句,但我接受了编程上下文,为什么它们是相同的…(如何声明变量)不管怎么说,用户已经有了ans…所以谢谢你把那个点指向我…:DIt仍然不正确。如果它被初始化为零,为什么编译器会抛出错误?而你仍然说是,即使它们与你解释的不一样。为什么不说“不,它们不一样,因为…”?