专业网站建设品牌,十四年专业建站经验,服务6000+客户--广州京杭网络
免费热线:400-683-0016      微信咨询  |  联系我们

如何理解Java中基本数据类型不可变_java

当前位置:网站建设 > 技术支持
资料来源:网络整理       时间:2023/3/7 1:23:12       共计:3592 浏览

如何理解Java中基本数据类型不可变?

这个是这样的吧,基本数据类型的数据作为参数传递时不会影响原来数据的值。

以函数例子说明:

public class main {

public static void main(String[] args){

int i=0;

change(i);

System.out.println(i);

}

public static int change(int i){

i=i+5;

return i;

}

}

在main函数中输出的i还是=0;无论在change中怎样改变i的值,在main函数中调用change()前后的i的值都是一样的。但是如果传递的引用类型的话,会改变原来的值。再看下面的例子

public class main {

public static void main(String[] args){

int i=0;

NumberTest j=new NumberTest(i);

change(i);

changeValue(j);

System.out.println(i);

System.out.println(j.getNum());

}

public static int change(int i){

i=i+5;

return i;

}

public static int changeValue(NumberTest num){

int j=num.getNum()+5;

num.setNum(j);

return j;

}

public static class NumberTest{

private int num;

public NumberTest(int num) {

super();

this.num = num;

}

public int getNum() {

return num;

}

public void setNum(int num) {

this.num = num;

}

}

}

changeValue()中传入的是引用型变量NumberTest,在changeValue()中改变num的值后,在main函数中重新打印System.out.println(j.getNum());的值就由0变成5了。

所以说引用型变量是可变型变量,基本类型是不可变的,还有一个特殊的string

版权说明:
本网站凡注明“广州京杭 原创”的皆为本站原创文章,如需转载请注明出处!
本网转载皆注明出处,遵循行业规范,如发现作品内容版权或其它问题的,请与我们联系处理!
欢迎扫描右侧微信二维码与我们联系。
·上一条:软件工程考研院校选择_java | ·下一条:目前高中生学习JAVA的前途会好吗_java

Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有    粤ICP备16019765号 

广州京杭网络科技有限公司 版权所有