zoukankan      html  css  js  c++  java
  • Java中参数传递问题

    Java中参数传递可以分为值传递和引用传递,话不多说直接撸代码

    1.传原始类型(int,String等)数据是值传递

     1 package test_1;
     2 public class Test {
     3     public static void main(String[] args) {
     4         String str = new String("abc");
     5         change1(str);
     6         System.out.println(str);
     7     }
     8     
     9     private static void change1(String str1) {
    10         str1 += "123";
    11         System.out.println(str1);
    12     }
    13 }

    结果:abc123
             abc

    分析:最后输出的还是abc,说明在函数里面改变的值不是它本身

    2.传对象是引用传递(包括数组)

     1 package test_1;
     2 class Time {
     3     public int hour;
     4     public int minute;
     5     public int second;
     6 }
     7 
     8 public class ObjectParamTransfer {
     9     Time time;
    10 
    11     public static void main(String[] args) {
    12         ObjectParamTransfer opt = new ObjectParamTransfer();
    13         opt.time = new Time();
    14         opt.time.hour = 11;
    15         opt.time.minute = 22;
    16         opt.time.second = 33;
    17 
    18         opt.method(opt.time);
    19         System.out.println("执行方法后的time的属性值");
    20         System.out.println("hour=" + opt.time.hour);
    21         System.out.println("minute=" + opt.time.minute);
    22         System.out.println("second=" + opt.time.second);
    23 
    24     }
    25 
    26     private void method(Time t) {
    27      
    28         t.hour = 44;
    29         t.minute = 55;
    30         t.second = 60;
    31     }
    32 }

    结果:执行方法后的time的属性值
    hour=44
    minute=55
    second=60

    分析:方法里面传进去的是对象的地址,那么在方法体中进行的操作就可以改变这个对象

    总结:当要传递的参数是原始类型数据的时候是值传递,当要传递的参数是对象的时候是引用传递

    第一篇博客,不足之处欢迎在评论区中指正,谢谢!               

                                                                                                                     

    心之所向,素履以往
  • 相关阅读:
    日期时间函数的调用
    border的应用
    复合选择器(字体样式)
    样式表
    if语句
    JavaScript 简介
    表单元素
    标记及属性
    网页基础知识
    git commit 提交规范 & 规范校验
  • 原文地址:https://www.cnblogs.com/yinbiao/p/8052422.html
Copyright © 2011-2022 走看看