以下为传递参数的基本方法:
一、参数的传递
1、 创建一个访问权限为public的类并自定义一个方法
package 练习01;
/**
1. @author 一条子非鱼的沫
2. @see 参数的传递
*/
public class Person {
// 形式参数:描述数据类型,其中没有具体的数值
public String get(String name) {
// 可以使用:
// String str = name;
// return str; //返回值的数据类型必须与原定义类型一致
// 或者直接使用:
return name;
}
}
2、 新建一个类并使用main方法,实例化对象并传递参数
package 练习01;
public class Person_Test {
public static void main(String[] args) {
Person A = new Person();// 实例化对象
// 可以使用(繁琐):
// String someone="Lily";
// String n=A.get(someone);
// 或者直接使用:
String n = A.get("Lily");// 实际参数,接收返回值
System.out.println("姓名:\t" + n);
}
}
3、 输出效果
二、实际运用
题:使用传参的方法为一个长度为5的数组添加学生姓名,学生姓名须从控制台获取。
解:
- 自定义一个类(类一),和一个用于接收实际参数并赋值到给定数组的方法;
- 新建一个用于测试的类(类二),使用main方法,用Scanner将获取的实际参数传递给形式参数;
- 在类一中再定义一个方法showNames()用于输出数组信息;
- 在main方法中调用showNames()方法。
类一代码片:
package 练习01;
/**
* @author 一条子非鱼的沫
* @see 利用传参的方法为数组赋值
*/
public class Students {
// 声明一个数组用于保存学生的姓名
String[] names = new String[5];
// 自定义一个方法获取参数
public void addName(String name) {// name为形式参数
// 向已定义的数组中添加学生姓名,放入数组中第一个数值为null的位置
for (int i = 0; i < names.length; i++) {
if (names[i] == null) {// 找出数组中第一个为null值的位置
names[i] = name;// 将传递给name的实际参数赋值到第一个null位置
break;// 跳出循环,以免重复为null赋值
}
}
}
// 显示全部学生姓名
public void showNames() {
System.out.println("\n学生信息如下:");
for (int i = 0; i < names.length; i++) {// 遍历数组
// if (names != null) {// 如果传入的值不为空,则输出
System.out.print(names[i] + "\t");// 经main方法调用后输出数组
// } else {// 当传入的值为空时,跳出循环
// break;
// }
}
}
}
类二代码片(main方法):
package 练习01;
import java.util.Scanner;
/**
* @author 一条子非鱼的沫
* @see Students的测试
*/
public class Students_Test {
public static void main(String[] args) {
// 先创建一个对象
Students stu = new Students();// 实例化对象
Scanner input = new Scanner(System.in);
for (int i = 0; i < 5; i++) {// 为数组循环添加元素
System.out.print("请输入第" + (i + 1) + "个学生的姓名: ");
String name = input.next();
stu.addName(name);// 将获取的实际参数传递给形式参数
}
stu.showNames();// 调用方法,输出数组显示学生姓名
input.close();
}
}
效果图如下: