【问题标题】:Why Does code.runnable.com Allow Me to Change a Variable's Value in Java? [closed]为什么 code.runnable.com 允许我在 Java 中更改变量的值? [关闭]
【发布时间】:2016-01-23 00:01:20
【问题描述】:

听说Java整数是传值,那么为什么下面的代码在code.runnable.com中可以工作呢?

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

代码将打印出2。

【问题讨论】:

  • 你没有甚至调用了一个方法。这是简单的本地分配。请澄清您的问题。
  • @ElliottFrisch 未调用方法修改变量。 System.out.println 是一个方法,它被调用了。
  • @MikeCAT 好吧,main 也是。但是 OP 的问题只包括一个本地分配的例子。

标签: java pass-by-value


【解决方案1】:

此代码 sn-p 不会在任何地方传递 number。您正在声明一个局部变量,然后覆盖其初始值。这在 Java 中是完全合法的,与按引用或按值传递无关。

【讨论】:

  • 截取的代码确实将number传递给System.out.println,所以它被打印出来了。
猜你喜欢
  • 2013-05-08
  • 2016-08-10
  • 2021-10-22
  • 2010-10-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多