# 傳值傳址測試 ###### tags: 'Ming' {%hackmd BJrTq20hE %} public class PassArgTest { static void passValue(double value) { value = 20.0; } static void passReference(Pen reference) { reference.price = 20.0; } public static void main(String[] args) { double price = 10.0; passValue(price); // copy一份值給passValue這個方法 System.out.println(price); // 10 (還是原本的資料,沒有因為方法的執行而被修改) Pen myPen = new Pen(); myPen.price = 10.0; passReference(myPen); //copy一個位址(門牌)給passReference這個方法 System.out.println(myPen.price); // 20 (原始資料發生修改,被passReference方法裡面改掉了) } }