package com.meteor;
publicclassfunction {publicstaticvoid main(String[] args) {
intsum = 0;
for (int i = 1; i <= 10; i++) {
sum += i;
}
System.out.println(1+"到"+10+"的和是"+sum);
sum = 0;
for (int i = 20; i <= 30; i++) {
sum += i;
}
System.out.println(20+"到"+30+"的和是"+sum);
sum = 0;
for (int i = 35; i <= 45; i++) {
sum += i;
}
System.out.println(35+"到"+45+"的和是"+sum);
}
}
package com.meteor;
publicclass function {
publicstaticvoidmain(String[] args) {
sum(1,10);
sum(20,30);
sum(35,45);
}
publicstaticvoidsum(int a, int b) {
int sum = 0;
for (int i = a; i <= b; i++) {
sum += i;
}
System.out.println(a+"到"+b+"的和是"+sum);
}
}
把相同的部分提取出来,其中有需要变化的东西——变量,把变量做成参数。
函数
函数是一块代码,接收零个或多个参数,做一件事情,并返回零个或一个值
函数头
函数名
返回类型
参数表
函数体
6.1.2 调用函数
函数名(参数值);
()起到了表示函数调用的重要作用
即使没有参数也需要()
如果有参数,则需要给出正确的数量和顺序
函数返回
函数知道每一次是哪里调用它,函数结束的时候会返回到正确的地方
return停止函数的执行,并送回一个值
return;return表达式;
一个函数里可以出现多个return语句,但是保持单一出囗是好的做法
从函数中返回的值可以赋值给变量,可以再传递给函数,甚至可以丢弃
void 函数名(参数表),没有返回值的函数
6.2 函数的参数与本地变量
6.2.1 函数参数的传递
如果函数有参数,调用函数时必须传递给它数量、类型正确的值
当函数期望的参数类型比调用函数时给的值的类型宽的时候,编译器能悄悄替你把类型转换好
char->int->double
当函数期望的参数类型比调用函数时给的值的类型窄的时候,需要你写强制类型转换
当函数期望的参数类型与调用函数时给的值的类型之间无法转换的时候一>不行!
传过去的是什么
package com.meteor.function;
publicclass Swap {
publicstaticvoidmain(String[] args) {
int a = 5;
int b = 6;
swap(a, b);
}
privatestaticvoidswap(int a, int b) {
int t;
t = a;
a = b;
b = t;
}
}