java 中引數的傳遞

zhao_hong_mei發表於2002-11-26
package edu;

/**
* Title:
* Description:
* Copyright: Copyright (c) 2002
* Company:
* @author
* @version 1.0
*/

public class StrTest {

public StrTest() {
}

public void changePos(String str1,String str2){
String str;
long l1=Long.parseLong(str1);
long l2=Long.parseLong(str2);
if (l1>l2){
str=str1;
str1=str2;
str2=str;
}
System.out.println("str1=" + str1 + " and " + str2);
}
public static void main(String[] args) {
StrTest strTest1 = new StrTest();
String str1="72";
String str2="70";
strTest1.changePos(str1,str2);
System.out.println("str1=" + str1 + " and " + str2);
}
}

結果:
str1=70 and 72

str1=72 and 70

為什麼是值傳遞,能解釋以下嗎?str1和str2為什麼沒有改變?

相關文章