博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
8.Java语言基础:函数
阅读量:5289 次
发布时间:2019-06-14

本文共 5427 字,大约阅读时间需要 18 分钟。

阅读目录:

1.函数的定义

2.函数的特点

3.函数的应用

4.函数的重载

 

1.函数的定义

1.函数的定义    答:函数就是定义在类中的具有特定功能的一段独立小程序。    函数也称为方法。    2.函数的格式    修饰符  返回值类型 函数名(参数类型  形式参数1,参数类型 形式参数2,...)    {        执行语句;        return 返回值;    }        返回值类型:函数运行后的结果的数据类型。    参数类型:是形式参数的数据类型。    形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。    return:用于结束函数。    返回值:该函数运算后的结果,该结果会返回给调用者。

 

示例:

class FunctionDemo{    public static void main(String[] args)    {        //int a = 3;        //int b = 4;        //int c;        //c = a+b;                //c = 5+7;        //c = 9+8;                int c = add(3,4)        System.out.println("c="+c)            }        public static int add(int a, int b)    {        return a+b;    }

    /*

    装饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2,...)
    {
      执行语句;
      return 返回值;
    }
    */

}

 

特殊情况示例:总结: 没有具体返回值时,返回值类型用void表示注意: 如果返回值类型是void,那么函数中的return语句可以省略不写。class FunctionDemo01{    public static void main(String[] args)    {        myPrint();        myPrint();            }        public static void myPirnt()    {        System.out.println("hello world")        return;    }        public static int add(int a,int b)    {        return a+b;    }        }

 

2.函数的特点

 

函数的特点:    1.定义函数可以将功能代码进行封装    2.便于对该功能进行复用    3.函数只有被调用才会被执行    4.函数的出现提高了代码的复用性    5.对于函数没有具体返回值的情况,返回值类型用关键字void表示      那么该函数中的return语句如果在最后一行可以省略不写。    注意:        函数中只能调用函数,不可以在函数内部定义函数。        定义函数时,函数的结果应该返回给调用者,交由调用者处理。

 

注意点:小误区

class FunctionDemo02{    public static void main(String[] args)    {        int x = add(3,5);  //绞肉机        System.out.println("x="+x)        add(3,5)            }        //这种形式不合适,定义函数的误区,因为直接就输出结果了。    public static void add(int a;int b)    {        System.out.println(a+b);        return;    }        //用这种格式比较适合    public static int add(int a,int b)    {        return a+b;    }        }

 

练习:

class FunctionDemo03{    public static void main(String[] args)    {        System.out.println("hello world")    }        /*        需求1: 定义一个功能,完成两个整数的和的获取。        思路:既然定义功能,就是可以用函数来体现。            如何定义一个函数呢?            通过两个明确来完成。            明确1:这个功能的结果是什么?  是和,是功能的结果,所以该功能的返回值类型是int            明确2:这个功能实现过程中是否需要未知内容参与运算? 有,加数和被加数,这就是函数的参数列表(参数的个数,参数的类型)            注意: 返回值类型和参数类型没有直接关系。    */    public static int add(int a,int b)    {        int sum = a+b;        return sum;    }                    /*        需求2: 定义一个功能,画一个矩形在控制台。        明确1: 这个功能的结果是什么?            答:没有结果,因为直接打印到了控制台,并未返回给调用者。用void表示        明确2: 这个功能实现过程中是否需要未知内容参与运算?            答:有,行和列不确定。两个。整数int                */        public static void draw(int row,int col)    {        for (int x=1; x<=row; x++)        {            for (int y=1; y<=col, y++)            {                System.out.print("*")            }            System.out.println();        }    }    /*        需求3: 定义一个功能,比较两个数是否相等。        明确1: 这个功能的结果是什么?            答:有, boolean        明确2: 这个功能实现过程中是否需要未知内容参与运算?            答:有两个整数。                */    public static boolean equals(int a,int b)    {        /*        if(a==b)            return true;        else             return flase;        */        //return (a == b)? true:false;            return a===b;    }    /*        需求1: 定义一个功能,获取两个数较大的数。        明确1: 这个功能的结果是什么?            答:有,int        明确2: 这个功能实现过程中是否需要未知内容参与运算?            答:有参与比较的两个整数,int    */        public static int getMax(int a, int b)    {        if (a>b)            return a;        else             return b;            }        /*        定义功能: 打印99乘法表    */    public static void print99()    {        for(int x=1; x<=9; x++)        {            for(int y=1; y<=x; y++)            {                System.out.print(y+"*"+x+"="+y*x+"\t");            }            System.out.println()        }    }        /*        根据考试成绩获取学生分数对应的等级        90-100 A        80-89 B        70-79  C        60-69  D        60以下 E                结果: 等级,字符,char        参数: 分数,int            */    public static char getLevel(int num)    {        char level;        if (num>=90n && num<=100)            level = 'A'        else if (num>=80 && num <=89)            level = 'B'        else if (num>=70 && num <=79)            level = 'C'        else if (num>=60 && num <=69)            level = 'D'        else              level = 'E'        return level;    }}

 

 

3.函数的应用

 

 

 

4.函数的重载

 

1.函数的重载重载的概念:    在同一个类中,允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不同即可。    重载的特点:    与返回值类型无关,只看参数列表    重载的好处:    方便于阅读,优化了程序设计    重载示例:    //返回两个整数的和int add(int x, int y)(return x+y;)    //返回三个整数的和int add(int x,int y,int z)(return x+y+z;)    //返回两个小数的和double add(double x ,double y)(return x+y;)            /*需求:函数的重载*/    class  FunctionDemo4{    public static void main(String [] args)    {        //System.out.println("Hello world")        printCFB(9);    }    /*    1.同一个类    2.同名    3.参数个数不同,或者,参数类型不同    */        //加法运算,两个整数的和    public static int add1(int a,int b)    {        return a+b;    }        //加法运算,两个小数的和    public short double add2(double a,double b)    {        return a+b;    }        //加法运算,三个整数的和    public static int add3(int a,int b,int c)    {        return a+b+c;    }        /*    打印乘法表    */    public static void printCFB(int num)    {        for(int x=1; x<=num; x++)        {            for(int y=1; y<=x; y++)            {                System.out.print(y+"*"+x+"="+y*x+"\t");                            }            System.out.println();        }    }        /*    打印标准乘法表    */    public static void printCFB()    {        printCFB(9);    }        }

 

转载于:https://www.cnblogs.com/zhongbokun/p/10586626.html

你可能感兴趣的文章
数据结构之最小堆的实现C++版
查看>>
cocos2d-js 遮挡层
查看>>
python学习笔记:模块——xpinyin(拼音)、hashlib(加密)
查看>>
Linux进程通信之System V共享内存
查看>>
Web前端开发工程师的具备条件
查看>>
为什么要用日志框架 Logback 基本使用
查看>>
Cannot open precompiled header file: 'Debug/<Project-Name>.pch': No such fil
查看>>
实用Android开发工具和资源精选
查看>>
TileMap
查看>>
设计模式-中介者模式(Mediator)
查看>>
JS属性大全
查看>>
JavaScript位运算符 2
查看>>
XE 画矩形实现拖拉改变大小(属性)
查看>>
Java多线程—使用初步
查看>>
java复制文件
查看>>
CSS垂直居中和水平居中的几种方法
查看>>
String
查看>>
easydict的使用方法
查看>>
第一册:lesson seventy nine.
查看>>
查看webservice服务下的所有方法和参数类型
查看>>