黑马程序员—函数应用

------- 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
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值