• 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

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

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

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

                                                                                                                     

    心之所向,素履以往
  • 相关阅读:
    内核中的内存都不分页
    SQL Server 变更数据捕获(CDC)
    FPGA视频拼接器的放大和缩小功能
    Button的Click事件与js函数的两种不同顺序触发方式
    STM32系列ARM单片机介绍
    开源ETL工具kettle--数据迁移
    hdu 2846 Repository
    LeetCode 231:Power of Two
    hdu 4628 Pieces(状态压缩+记忆化搜索)
    MongoDB 数据库下载和安装
  • 原文地址:https://www.cnblogs.com/yinbiao/p/8052422.html
Copyright © 2020-2023  润新知