------- android培训、java培训、期待与您交流! ----------
class functiondemo2//函数(应用) { public static void main(String[] args) { boolean result=compare(3,3); /* 不是int result=compare(3,3) 因为是boolean类型 返回的必须是boolean(就是 调用的也必须是boolean) */ System.out.println("result "+result); int MAX=GetMax(2,82); System.out.println("MAX="+MAX); System.out.println("Sum="+GetSum(3,4)); //结果为Sum=7 } /* 我们不断地编写程序代码其实就是不断地去实现功能 而java中的最小功能单元就是函数 方法 : 如何定义一个函数呢? 1.既然函数是一个独立的功能 那么该功能的运算结果是什么先得明确 因为这是 在明确函数的返回值类型 2.在明确在定义该功能的过程中是否需要未知的内容参与运算 因为是在明确函数 的参数列表(参数的类型和参数的个数) /* 需求1:定义一个功能 完成3+4的运算 并将结果返回给调用者 1.明确功能的结果: 是一个整数的和 2.在实现该功能的过程中是否有未知内容参与运算 没有 其实这两个功能就是在明确函数的定义 1.是在明确函数的返回值类型 2.明确函数的参数列表( 参数的类型和参数的个数) public static int GetSum() { return 3+4; } 以上这个函数的功能 结果是固定的 毫无扩展性而言 为了方便用户需求 由用户来指定加数和被加数 这样 功能才有意义 思路: 1,功能结果是一个和。返回值类型是int。 2,有未知内容参与运算。有两个。这个两个未知内容的类型都是int。 如下: */ public static int GetSum(int x,int y) { return x+y; } /* 需求2: 判断两个数是否相等 思路 : 1.先看要的是什么结果 是判断两个数是否相等 属于布尔型 所以要定义boolean 开始自己用的是int 也像老师老师那样分析了 可就是一带而过 上去就写代码 所以就挂了 而且 if 定义的条件表达式后面不能加; 错误提示是"else 不带有 if"找了半天错误才发现这里 开始怎么也不明白怎么会提示没有if 呢?? 2.接着判断是否有未知的量参与运算 有 所以定义定义参数列表(int x int y) */ public static boolean compare(int x,int y) { //if (x==y)//不能加; // return true;//不要丢; //else // return false;//不要丢; //可以再继续优化,简化代码,注释else 但是不能注释return false /*还可以继续优化,因为是if else语句 前面讲过三元运算符的问题 因为 这里if定义的就是具体的值 所以可以用三元运算符代替*/ //return (x==y)?true:false;//必须不能丢return啊!! //还可以继续优化,因为函数本身返回值类型就是boolean,所以可以直接写成: return x==y;//这就是代码的优化 } /* 需求3: 定义功能,对两个数进行比较。获取较大的数。 思路: 1.获取最大值 运算结果是值 所以返回值类型为int 2.运算过程中有未知量参与 所以要定义参数列表 */ public static int GetMax(int x,int y)//需要写2个int 不是1个 { /*if (x>y) return x; else return y;*/ return(x>y)?x:y; } //注意:如果是没有具体返回值的情况 如 public static void Get(int x,int y) { System.out.println(x+y); return; } /* 这种思想本身就是错的 以后尽量不要写 如果用户只是想比较用GetSum函数得到的两个 数的和 不要将两个数都打印出来 只要最后的结果 这样做就是多余了 比如 int x=GetSum(2,6); int y=GetSum(4,9); int Max=GetMax(x,y); 是否打印(显示结果)的决定权在用户(调用者)!不要多余,实际上好多安卓软件都有这个毛病 需 要的功能没有 不需要的一堆 这种情况是不能直接在输出中打印 System.out.println(GetMax(3,4));的原因就是他 没有具体的返回值 而其他的有具体返回值的是可以的 比如上面的 GetSum 就可以写成 System.out.println(GetSum(3,4)); 结果在上面 */ //注意 函数里面是不能套函数的 写的函数如果包含在主函数里 会报错 提示非法 需要.class }