Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 这段代码(参数(原语类型))是如何工作的?_Java_Parameters_Parameter Passing - Fatal编程技术网

Java 这段代码(参数(原语类型))是如何工作的?

Java 这段代码(参数(原语类型))是如何工作的?,java,parameters,parameter-passing,Java,Parameters,Parameter Passing,我是java新手,刚学了一点方法和类,对这一章我真的很困惑。这段代码来自我们的评论powerpoint,我真的不知道怎么做。我觉得最后一节应该在课堂上?但powerpoint就是这样说的。有人能解释一下这个代码是如何工作的,以及如何一步一步地得到打印结果吗??我真的很感激,谢谢 public class MyClass { public void swap(int x, int y){ int temp = x; x = y; y = te

我是java新手,刚学了一点方法和类,对这一章我真的很困惑。这段代码来自我们的评论powerpoint,我真的不知道怎么做。我觉得最后一节应该在课堂上?但powerpoint就是这样说的。有人能解释一下这个代码是如何工作的,以及如何一步一步地得到打印结果吗??我真的很感激,谢谢

public class MyClass {
    public void swap(int x, int y){
        int temp = x;
        x = y;
        y = temp;
    }
}

int w = 10,
z = 20;
MyClass m = new MyClass();
m.swap(w,z);
System.out.println(w + " " + z);

为了执行Java,您需要一个main方法

public static void main(String[] args) {
  // Do stuff
}
因此,您可以像这样重写示例以使其执行:

public class Main {
  public static void main(String[] args) {
    int w = 10,
    z = 20;
    MyClass m = new MyClass();
    m.swap(w,z);
    System.out.println(w + " " + z);
  }
}

public class MyClass {
    public void swap(int x, int y) {
        int temp = x;
        x = y;
        y = temp;
    }
}

这个代码示例的全部要点是Java通过值而不是引用传递基本类型。看看主要的方法。有两个整数,w=10和z=20。然后将w和z传递给swap方法。由于java将这些原语类型作为值传递,所以原始的w和z不会被交换修改,这一点在println中得到了验证,其中w仍然是10,z仍然是20。

发布代码图片与发布实际代码不同。你需要修改你的问题并将代码的实际文本粘贴到其中。是的,最后一部分应该在(main)方法中。您可以将该方法放入
MyClass
中。但是代码看起来有点可疑,因为swap方法不会交换任何东西。我建议您阅读基本教程,非常感谢!!没问题,很乐意帮忙:-)