带参数的方法

it2022-05-07  9

 1. 语法:   

     <访问修饰符>  返回类型  <方法名>(<形式参数列表>) {

              //方法的主体     

   }  

2. 案例: 

榨汁机      

        

public class ZhazhiJi { //带参数的方法 public String zhazhi(String fruit){   //形参 String juice=fruit+"汁"; return juice; } } public class ZhazhijiTest { public static void main(String[] args) { //创建类的对象实例 ZhazhiJi zhazhiji=new ZhazhiJi(); //用.的方式进行调用 String fruit="苹果"; String juice = zhazhiji.zhazhi(fruit);     //实参 System.out.println(juice); } }

 

  

 

3. 形参和实参:

        形参代表定义方法时括号内的参数(参数列表)    public void xc(形参)  

       实参代表在调用方法时方法括号内的参数(参数列表)  .xc(实参);  

   4. 携带多个参数:

       注意:当携带多个参数时,实参列表需要和形参列表的顺序和数据类型保持一致

        案例:从开始位置开始查找数组中是否有学生姓名,查找到结束位置        

   //从开始位置到结束位置查找学生

public void seachStudent(int firstindex,int secondindex,String name){ for (int i = firstindex; i <=secondindex; i++) { if(names[i].equals(name)){ System.out.println("找到了!"); break; }else{ System.out.println("没找到!"); } } } stu.seachStudent(2,8,"陈八");

 

  二.数组作为参数:

     1. 案例:

有5位学员参加了Java知识竞赛的决赛,输出决赛的平均成绩和最高成绩   

    

public class JavaScore { //计算平均成绩 public double avgscore(double[] score){ double avg=0.0; //平均分 double sum=0.0; //总成绩 for (int i = 0; i < score.length; i++) { sum=sum+score[i]; } avg=sum/score.length; return avg; } //计算数组的最高成绩 public double maxscore(double[] score){ double max=score[0]; //最高分 for (int i = 0; i < score.length; i++) { if(max<score[i]){ max=score[i]; } } return max; } } public class JavaScoreTest { public static void main(String[] args) { double [] scores=new double[5]; Scanner input=new Scanner(System.in); for (int i = 0; i < scores.length; i++) { System.out.println("请输入第"+(i+1)+"位学员的成绩:"); double score=input.nextDouble(); scores[i]=score; } JavaScore javascore=new JavaScore(); double avgscore = javascore.avgscore(scores); double maxscore = javascore.maxscore(scores); System.out.println("平均成绩为:"+avgscore); System.out.println("最高成绩为:"+maxscore); } }

  

三.对象作为参数:    

1. 对象数组:    

      例如

Student [] stus=new Student[5];    

      访问对象数组中的元素通过stus[]的方式进行访问  

     案例:在实现了增加一个学生姓名的基础上,增加学生的学号、年龄和成绩,并显示这些信息   

         

public class Student { int stuno; // 学号 String name; // 姓名 int age; // 年龄 double score; // 成绩 /** * 创建一个数组:保存学生 */ Student[] stus = new Student[30]; // 对象数组:存储一堆对象 对象类型 // 添加学生 public void addStudent(Student stu) { for (int i = 0; i < stus.length; i++) { if (stus[i] == null) { stus[i] = stu; break; } } } // 展示学生信息 public void showStudent() { for (int i = 0; i < stus.length; i++) { if (stus[i] != null) { System.out.println(stus[i].stuno + "\t" + stus[i].name + "\t" + stus[i].age + "\t" + stus[i].score); } } } } public class StudentTest { public static void main(String[] args) { /*Student stu1=new Student(); stu1.name="赵四"; stu1.stuno=1; stu1.age=10; stu1.score=80; stu1.addStudent(stu1); Student stu2=new Student(); stu2.name="张三"; stu2.stuno=2; stu2.age=20; stu2.score=95; stu1.addStudent(stu2); stu1.showStudent();*/ Scanner input=new Scanner(System.in); Student stus=new Student(); for (int i = 1; i <=5; i++) { Student stu=new Student(); System.out.println("请输入第"+i+"位学生编号:"); stu.stuno=input.nextInt(); System.out.println("请输入第"+i+"位学生姓名:"); stu.name=input.next(); System.out.println("请输入第"+i+"位学生年龄:"); stu.age=input.nextInt(); System.out.println("请输入第"+i+"位学生成绩:"); stu.score=input.nextDouble(); stus.addStudent(stu); } stus.showStudent(); } }

 

  

 

  四.包    

1.好处:

(1)允许类组成较小的单元(类似文件夹),易于找到和使用相应的文件

       (2)防止命名冲突     

   (3)更好的保护类、属性和方法   

创建包的语法:package  

   导入包的语法:import

    2.创建包的两种方式:   

       (1)选择项目下的src目录右键-->New-->package

         (2)创建类的时候指定包名,如果没有包,则为默认的default package

转载于:https://www.cnblogs.com/Chencheno/p/9812572.html


最新回复(0)