java,基本数据类型和引用数据类型

java中的数据类型分为基本数据类型和引用数据类型

基本数据类型

  整型:byte,short,int,long

  浮点型:float,double

  字符型:char

  布尔型:boolean

引用数据类型

  类

  接口

  数组

方法的参数分为实际参数,形式参数

  形式参数:定义方法时写的参数

  实际参数:调用方法时写的具体数值

一般情况下,在数据作为参数传递的时候,基本数据类型时值传递,引用数据类型是引用传递(地址传递)

  * 值传递不会影响其本身,只是将本身的值复制一份

  * 地址传递会影响本身

String类型传递

  String是一个类,类是引用数据类型,作为参数传递的时候,应该是引用传递。但结果看起来是值传递。

  是因为String类是被final修饰的,String的值在创建之后不能被更改。【String对象str的任何修改等同于创建一个对象,并将新的地址值赋值给str】

String str = "abc";
等效于
char data[] = {'a', 'b', 'c'};
String str = new String(data);

  String对象作为参数传递时,走的依然是引用传递。

  String对象一旦创建,内容不可更改。每一次内容的更改都是重新创建出来的新对象

总结

  * 值传递的时候,将实参的值,copy一份给形参

  * 引用传递的时候,将实参的地址值,copy一份给形参

原文地址:https://www.cnblogs.com/knightdreams6/p/11507265.html