带参数的方法

 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

posted @ 2018-10-18 19:18  听风忆雪  阅读(600)  评论(0编辑  收藏  举报