码迷,mamicode.com
首页 > 其他好文 > 详细

带参数的方法

时间:2018-10-17 14:30:05      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:多个参数   没有   each   cores   数列   tun   package   形式   length   

一.带参数的方法

    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

带参数的方法

标签:多个参数   没有   each   cores   数列   tun   package   形式   length   

原文地址:https://www.cnblogs.com/tinghao/p/9803345.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!