[英]Java / Statements containing multiple '.' operators
在Java中,请考虑以下代码:
Vector v = new Vector();
for(int i = 1; i <= 10; i++)
{
v.addElement(Integer.toString(i));
}
System.out.println(v.elementAt(9).toString());
v.elementAt(9).toString()
类的Java语句是否包含多个“。” 操作员完全足够好,还是在一定时间内会导致任何给定类型的冲突?
到目前为止,我只通过在单个语句周围放上括号来使它们在括号内的安全性足够高,以至于根本不会造成任何给定类型的冲突。
(v.elementAt(9)).toString()
。
到目前为止,我在十多年的编程和编码经验中从未创造过任何给定类型的歧义语句。
v.elementAt(9).toString()
。
v.elementAt(i).toString()
类的Java语句是否包含多个“。” 完全足够好,还是它们在一定时间内会引起任何特定类型的冲突?
它们非常好,但有一些警告。 如果v.elementAt(i)
为null
,则调用v.elementAt(i).toString()
将抛出NullPointerException
。 如果您选择i
作为某个负值或大于Vector
,我怀疑也会抛出ArrayIndexOutOfBoundsException
。 您可以将这种语法视为函数的组成(从左到右),这与数学中的相反。
在您的特定示例中,此语法在逻辑上是等效的:
(v.elementAt(i)).toString()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.