Java--带参数的方法

1.定义带参数的方法
①带参数:方法中某种功能的实现依赖于我们给它的初始信息,这时候在定义方法时需要在括号中加入参数列表
②语法:

访问修饰符 返回值类型 方法名(参数列表){
	//方法的主体
}

2.调用带参的方法
①语法:

对象名.方法名(参数1,参数2,...)

②注意:
(1)先实例化对象,在调用方法
(2)实参的类型、数量、顺序要与形参的一一对应

3.带多个参数的方法
带参方法的参数个数无论多少,在使用时只要注意实参和形参一一对应:传递实参值与形参的数据类型相同、个数相同、顺序一致

4.常见错误
①代码中,调用方法时,在传递的实参前不添加数据类型
正确格式:对象名.方法名(<要赋予的内容>)
②代码中,形参和实参的数据类型要一致、数量要一致、数序要一致
③方法定义有返回值,但是调用该方法后没有对返回值进行任何处理(语法结构上不错,但程序设计上算程序设计错误的一种)

5.换行、空格
\n\t\r

6.数组作为参数的方法

//求五位同学的成绩的平均分及最高分
public class StudentsBiz1 {
	/**
	 * 求平均分
	 */
	public double calAvg(int[] scores){
		int sum=0;//总成绩
		double avg=0.0;//平均分
		for(int i=0;i<scores.length;i++){//遍历数组,累计总成绩
			sum+=scores[i];
		}
		avg=(double)sum/scores.length;//平均成绩=总成绩/数组长度
		return avg;
	}
	/**
	 * 求最高分
	 */
	public int calMax(int[] scores){
		int max=scores[0];//当前最高分
		for(int i=1;i<scores.length;i++){//遍历数组,找最大值
			if(max<scores[i]){//如果当前最大值<当前数,则赋值给最大值
				max=scores[i];
			}
		}
		return max;
	}
}
//测试类
import java.util.Scanner;

public class TestCal {
	public static void main(String[] args) {
		StudentsBiz1 st=new StudentsBiz1();
		int[] scores=new int[5];//保存比赛成绩
		
		Scanner input=new Scanner(System.in);
		System.out.println("请输入五名参赛者的成绩:");
		for(int i=0;i<5;i++){
			scores[i]=input.nextInt();
		}
		//输出平均成绩
		double avgScore=st.calAvg(scores);
		System.out.println("平均成绩:"+avgScore);
		//输出最高成绩
		int maxScore=st.calMax(scores);
		System.out.println("最高成绩:"+maxScore);
	}
}

7.对象作为参数的方法

//添加学生信息
/**
 * 学生类
 */
	class Student{
		public int id;//序号
		public String name;//姓名
		public int age;//年龄
		public int score;//得分
		
		public void showInfo(){
			System.out.println("序号\t姓名\t年龄\t得分");
			System.out.println(id+"\t"+name+"\t"+age+"\t"+score);
		}
	}
	/**
	 *学生管理类
	 */
public class StudentsBiz2 {
	Student[] students=new Student[30];//学生数组
	/**
	 * 增加学生
	 */
	public void addStudent(Student stu){//传参stu
		for(int i=0;i<students.length;i++){//遍历数组,录入stu的信息
			if(students[i]==null){//当前数组为空时将信息传入
				students[i]=stu;
				break;
			}
		}
	}
	/**
	 * 显示本班学生信息
	 */
	public void showStudents(){
		System.out.println("本班学生列表:");
		for(int i=0;i<students.length;i++){//遍历数组输出信息
			if(students[i]!=null){//当前数组中不为空则调用输出
				students[i].showInfo();
				//break;//加break则执行一次结束
			}
		}
		System.out.println();
	}
}
//测试类
import java.util.Scanner;
public class TsetAdd2 {
	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		//实例化学生对象并初始化
		Student student1=new Student();//创建对象1
		//给对象1赋值
		student1.id=10;
		student1.name="王紫";
		student1.age=18;
		student1.score=99;
		Student student2=new Student();//创建对象2
		//给对象2赋值
		student2.id=11;
		student2.name="郝湉";
		student2.age=19;
		student2.score=60;
		//新增学生对象
		StudentsBiz2 studentsBiz=new StudentsBiz2();//创建StudentsBiz2对象
		studentsBiz.addStudent(student1);//调用
		studentsBiz.addStudent(student2);
		studentsBiz.showStudents();//显示学生信息
		
	}
	//对象作为参数
	//用类名声明的数组称之为对象数组 存储的元素都是该类的对象
	/*TsetAdd2 arr[]=new TsetAdd2[5];
	 * arr[0]=student1;//类类型
	 * arr[1]=student2;
	 */
}

8.为什么需要包
①包允许将类组合成较小的单元(类似文件夹),易于找到和使用相应的类文件。
②防止命名冲突。
③包允许在更广的范围内保护类、数据和方法,可以在包内定义类。

9.如何声明包
①要声明一个包(package),只要包含一个package命令作为一个Java源文件的第一条语句就可以。
②语法
package 包名;
package是关键字,包的声明必须是Java源文件中的第一条非注释性的语句,而且一个源文件只能有一个声明包的语句
③包名规范
(1)Java包的名字通常由小写字母组成,不能以圆点开头或结尾
(2)一个唯一包名的前缀通常是全部的小写的ASCLL字母,并且是一个顶级域名com、edu、gov、net或org,通常使用组织的网络域名的逆序。
(3)包名的后续部分依不同机构各自内部的规范不同而不同。 这类命名规范可能以特定目录名的组成来区分部门、项目、机器或注册名。

10.使用MyEclipse创建包
方法一:分别创建包和类
方法二:在创建类的过程中创建类所属的包

11.如何导入包
①语法:

import 包名.类名;

②如果要使用包下的某些类(多于一个)在使用import导入时,可以使用“包名.*”
语法:

import包名.*;

③注意:包的声明位于源文件的第一条语句,import语句要写在类定义之前
④小结:
(1)声明包的含义:生命在当前类所处的位置
(2)导入包的含义:声明在当前类中要使用到的其他类所处的位置

  • 6
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值