Java中的传值传引用2021.5.20

本文详细介绍了Java中基本数据类型与引用类型的传值方式,并通过实例代码演示了字符串对象在内存中的存储方式及比较方法的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#java中的传值传引用

程序操作的所有数据

                       --都需要放在内存中处理

                    内存是一个线性结构 -- 与数据类似

                              物理结构--有具体的物理映射地址

传值:

   基本数据类型: 定长 0-9

               int i = 10;

               类型    变量[内存地址  10]  4个字节

               属性默认:0长度还是4个字节

                int i;   此时 i 的长度还是4个字节

引用类型:

                String name = "ABC";    6 byte

                String name;  这个不确定长度的  

                String 最长长度 查阅源码--> 由数组长度决定  一个数组最长容量

                                默认:name = null(关键字);

 

                name  = null;

                name = "ABC";

                        name                                            数据

                        存储的是数据的地址                      内存空间中

               

                String str1 = "ABC";

                String  str2;

                str2= str1;// 传递的是ABC所在的内存地址

                 

 

                 int i = 10;

                 int j;

                 j=i;//传递的是10值

​
public class Test {
      public static void main(String[] args) {
    	  String str = "ABC";
    	  String str1 = "ABC";
    	  
    	  String str2 = new String("ABC");
    	  String str3 = new String("ABC");
    	  if(str==str1) {
                    System.out.println("1true");            		  
    	  }
    	  if(str2==str3) {
    		        System.out.println("2true");
    	  }
    	  if(str2.equals(str)) {
    		  System.out.println("3true");
    	  }
      }
}

​

 

如上代码,输出的结果就会是1true和3true

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值