我们之前说过了三种变量,实例变量(成员变量)、静态变量(类变量)、局部变量,
这里不过多赘述。
变量在使用前都需要声明,那么声明变量的 基本格式如下:
VariableType Name = Value
{ 声明变量Name } [初始化Name并赋值Value]
下面是声明变量的实例:
int a, b, c; // 声明三个int型整数:a、 b、c
int d = 3, e = 4, f = 5; // 声明三个整数并赋予初值
byte z = 22; // 声明并初始化 z
String s = "runoob"; // 声明并初始化字符串 s
double pi = 3.14159; // 声明了双精度浮点型变量 pi
char x = 'x'; // 声明变量 x 的值是字符 'x'。
Java 参数变量
Java 中的参数变量是指在方法或构造函数中声明的变量,用于接收传递给方法或构造函数的值。参数变量与局部变量类似,但它们只在方法或构造函数被调用时存在,并且只能在方法或构造函数内部使用。
Java 方法的声明语法如下:
accessModifier returnType methodName(parameterType parameterName1, parameterType parameterName2, ...) {
// 方法体
}
-
parameterType -- 表示参数变量的类型。
-
parameterName -- 表示参数变量的名称。
在调用方法时,我们必须为参数变量传递值,这些值可以是常量、变量或表达式。
方法参数变量的值传递方式有两种:值传递和引用传递。
-
值传递:在方法调用时,传递的是实际参数的值的副本。当参数变量被赋予新的值时,只会修改副本的值,不会影响原始值。Java 中的基本数据类型都采用值传递方式传递参数变量的值。
-
引用传递:在方法调用时,传递的是实际参数的引用(即内存地址)。当参数变量被赋予新的值时,会修改原始值的内容。Java 中的对象类型采用引用传递方式传递参数变量的值。
public class ParameterExample {
// 定义一个方法,接受两个整数参数并进行相加
public static int add(int num1, int num2) {
int sum = num1 + num2;
return sum;
}
public static void main(String[] args) {
int a = 5;
int b = 3;
// 值传递方式
int result1 = add(a, b);
// 引用类型地址传递
int[] arr = {1, 2, 3};
modifyArray(arr);
// 输出结果
System.out.println("值传递的结果是:" + result1);
System.out.println("引用类型地址传递的结果是:" + arr[0]);
}
// 修改数组的方法
public static void modifyArray(int[] array) {
array[0] = 100;
}
}
在这个示例中,我们展示了值传递和引用类型地址传递两种不同的参数传递方式。
-
值传递方式(基本数据类型): 我们将变量
a
和b
的值作为参数传递给add
方法,即add(a, b)
。这种方式是值传递,即将变量的值复制一份传递给方法,方法中的操作不会影响原始变量的值。 -
引用类型地址传递: 我们创建了一个整数数组
arr
,并将其作为参数传递给modifyArray
方法。这种方式是引用类型地址传递,即传递的是数组对象的地址,方法中对数组的修改会影响原始数组。
在 modifyArray
方法中,我们将数组的第一个元素修改为 100
。由于传递的是数组对象的地址,所以在方法内部对数组的修改会反映在原始数组上。
结尾语:记录于2023年7月11日20点50分,以上仅为个人在菜鸟教程Java的学习过程中遇到的问题,还有记录的个人想法,有错误欢迎指出,感谢!