2016-01-23 63 views
-2

我听说Java整数是通过价值,为什么下面的代码在code.runnable.com工作?为什么code.runnable.com允许我在Java中更改变量的值?

public class HelloWorld { 
    public static void main(String[] args) { 
    int number = 0; 
    number = 2; 
    System.out.println(number); 
    } 
} 

的代码将打印出。

+3

你**不是**甚至调用一个方法。这是简单的本地分配。请澄清你的问题。 –

+0

@ElliottFrisch不调用方法**来修改变量**。 'System.out.println'是一个方法,它被调用。 – MikeCAT

+0

@MikeCAT好吧,'main'也是。但OP的问题只包括一个本地分配的例子。 –

回答

0

此代码片段不会在任何地方通过number。你声明一个局部变量,然后覆盖它的初始值。这在Java中是完全合法的,并且与通过引用或按值传递无关。

+0

被剪切的代码将'number'传递给'System.out.println',所以它被打印出来。 – MikeCAT

相关问题