个人觉得就是c里面的函数。。
package day3;
public class fangfa1 {
public static void main(String[] args) {
int c1=sum(10,20);
System.out.println(c1);
} public static int sum(int a,int b){
int c=a+b;
return c;
}
}
使用方法的好处:
*提高了代码的复用性。
*让程序的逻辑更清晰。
(1)方法的定义,方法的完整格式,以及方法怎么调用执行。
package day3;
public class fangfa3 {
public static void main(String[] args) {
//学会方法定义其他形式,无返回无返回类型
print();
print();
}
public static void print(){
System.out.println("123");
System.out.println("123");
}
}
如果方法不需要返回结果,返回值类型必须申明成 void(无返回值)
(2)方法使用的其他问题
*方法的编写顺序无所谓。
*方法和方法之间是平级关系。
*void类型的,方法内不能有return返回。反之亦然
*return下面不能写代码,无法执行。
(3)方法的案例
定义一个方法,计算1-n的和并返回
package day3;
public class fangfa4 {
public static void main(String[] args) {
System.out.println(sum(5));
}
public static int sum(int n){
int sum=0;
for (int i = 0; i <=n; i++) {
sum=sum+i;
}
return sum;
}
}
判断该数字是奇数还是偶数
用方法求数组元素的max
(4)
方法的调用内存图
方法没有被调用时,在方法区的字节码文件中存放
方法被调用的时候,需要进入到栈内存中运行
(5)方法的参数传递机制
基本类型的参数传递:值传递
package day3;
public class fangfa7 {
public static void main(String[] args) {
//理解 java 基本类型参数传递:值传递
int a= 10;//实参
change(a);
System.out.println(a);
}
public static void change( int a){ //形参
System.out.println(a);
a=20;
System.out.println(a);
}
}
输出结果
传递的是数值!!传递的是实参存储的值,而不是实参本身。
引用类型的参数传递:值传递 传递的是地址
package day3;
public class fangfa8 {
public static void main(String[] args) {
// 引用类型的参数传递 ,地址传递
int[] arrs={10,23,45};
System.out.println(arrs[1]);//23
change(arrs);
System.out.println(arrs[1]);//2
}
public static void change(int[] arrs){
System.out.println(arrs[1]);//23
arrs[1]=2;
System.out.println(arrs[1]);//2
}
}
(6)方法重载:方法名称相同,形参列表不同
package day3;
public class fangfa9 {
public static void main(String[] args) {
//了解方法重载
fire();
fire("日本");
fire("日本",10);
}
public static void fire(){
System.out.println("1");
}
public static void fire(String location){
System.out.println(location+"aa");
}
public static void fire(String location,int number){
System.out.println(location+number+"a");
}
}
可读性强。
(7)单独使用return关键字
*可以立即跳出并结束当前方法的执行
package day3;
public class fangfa10 {
public static void main(String[] args) {
System.out.println("开始");
chu(10,0);
System.out.println("结束");
}
public static void chu(int a,int b){
if(b==0){
System.out.println("您输入的数据有误");
return; //跳出当前方法,并结束执行;
}
int c=a/b;
System.out.println(c);
}
}
return:跳出并立即结束所在方法的执行
break:跳出并结束当前所在循环的执行
continue:结束当前所在循环的当次,进入下一次循环
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)