发布网友 发布时间:2022-12-27 07:53
共1个回答
热心网友 时间:2023-10-19 09:54
函数是一个数学概念。计算机编程借用了这一概念。 如果你还没上高中,那么你知道下面一句话就可以了,高一的时候会学到的。 对于集合A:{1,2,3,4};B{2,4,6,8},如果能够找到一种对应关系,使得A中的任意一个元素x都能在B中找到一个唯一的元素y与之对应,则称这种对应关系为A到B的函数,写做y=f(x)(x∈A,y∈B)。 如果你高中已经毕业,现在希望学习编程,那么首先你要复习一下高中数学关于函数的一章,然后看下面的文字。 对于函数的使用者来说,他不关心f是如何实现,只要用x按照f所指出的对应关系进行计算或匹配,能够得到正确y,就认为f是正确的。 对于函数的设计者来说,只要能够设计一种对应关系,达到要求,那么他设计的函数的就是正确的。 我认为高中时我们常用的这种写法容易引起混淆:f(x)=2x,因为这样很难区分哪个是函数的定义,哪个是函数的使用,这样写比较清晰: 定义f(x)为{计算方法:t=2x,返回:t}。 当发现一个这样的表达式:y=f(2),我们就去找“定义f”这个字眼,找到后,用2按照定义的计算方法进行计算,并返回“返回”中指定的值。比如这里返回4。当然,我们还可以这样定义f: 定义f(x)为{计算方法: 如果x为1,则t=2; 如果x为2,则t=4; 如果x为3,则t=6; 如果x为4,则t=8;返回:t}。 虽然复杂,但是同样满足要求,对于使用者来说,这2个f的定义都是正确的。 计算机程序借用了这一概念,只不过表达方式不同,另外程序中的函数不仅能够完成从一个集合到另一个集合的映射,还能够完成一些其他操作,如打印、显示等等,是名副其实的“功能”(function:功能)。 比如对于集合A{0,1,...,65535};B{0,1},要构造这样一个映射:所有A中偶数映射到B中的0,所有奇数映射到1。 传统的数学表示法:f(x)=(偶数:0;奇数:1) 程序表示为(java): publicstaticintf(intx){ if(x%2==0)return0; elsereturn1; } 如果我们把函数名f改为isEven,那么这个映射关系就变成一个判断是否偶数的函数了。