方法的补充知识(5.9)
1、 方法的概念:(函数/过程)
-
封装了一段特定的业务逻辑功能。
-
尽可能的独立,一个方法只干一件事
-
方法可以被反复的重复调用;
-
减少代码的重复。有利于代码的维护,减少团队开发的成本。
-
提高开发的效率。
2、方法的语法规范 -
修饰词,返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,……){
-
方法体;(业务逻辑功能的具体实现)
-
return返回值;
-
}
如果无返回值类型,就没有return返回值;
3、解释:*修饰词:public static
*返回值类型:用于限定返回值的数据类型
*方法名:方便调用方法的名字
*参数类型: 限定调用方法时候,传入数据的类型
*参数名:接收调用方法的时候,传入数据的变量
*方法体:业务逻辑功能的具体实现
*return:结束方法,把返回值传给调用者;
4、方法的调用:
*1、单独的调用,没有意义
*2、输出调用,有意义,不够好,
*3、赋值调用,推荐方式5、方法的分类:
1、有参数有返回值类型
无返回值 类型
2、无参数无返回值 类型
有返回值 类型
6、实现的代码:
package cn.tedu.day04;
public class MethodDemo {
public static void main(String[] args) {
int x = 5;
int y = 8;
double z= 4844.56;
double l= 23.65235414;
sum(x,y);
//System.out.println(sum);
double dsum = dsum(z,l);
System.out.println(dsum);
printName("name");
System.out.println(getNumber());
a();
int[]arr={1,4,5,6,3,2};
printName1(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
//求和方法提取出来
/**
* 有参数有返回值
* 注意:
* 1、返回值的类型 int
* 2、参数列表:int x,int y;
*/
//public static int sum(int x,int y){
//return x+y;
//}
public static void sum(int x,int y){
System.out.println(x+y);
}
/**
*
* double类型的求和
* 返回值类型;double
* 参数列表:double x,double y
*/
public static double dsum(double x,double y){
return x+y;
}
/**
* 有参数无返回值类型
* 返回值类型:void
* 参数列表:有参数
*/
public static void printName(String name){
System.out.println("大家好,我叫啊哈哈"+name);
}
/**
* 无参数有返回值类型
* 返回值类型:double
* 参数列表:无参数
*/
public static double getNumber(){
return 3.14;
//return语句后不可写任何语句
//return; 编译错误,必须要返回一个值
//return "123.45"; 编译错误,返回值类型必须一致;
}
/**
* 无参数无返回值类型
* 返回值类型:void
* 参数列表:无参数
*
*/
public static void a(){
System.out.println("我们我们我们我们我们我们我们");
}
/**
* 数组作为参数,打印出数组的每一个元素
* 有参数有返回值的
* 有参数无返回值的
*
*/
//public static int
public static int[] printName1(int []arr){
int[] arr1=arr;
for (int i = 0; i < arr1.length; i++) {
arr[i]+=3;
}
return arr1;
}
}
如果参数的类型是引用数据类型,形式参数的改变会影响实际参数的改变
引用数据类型传参
int[]arr={1,4,5,6,3,2};
printName1(arr);
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
public static int[] printName1(int []arr){
int[] arr1=arr;
for (int i = 0; i < arr1.length; i++) {
arr[i]+=3;
}
return arr1;
}
基本数据类型的传参代码
package cn.tedu.day04;
/*方法:
- 如果方法的参数是基本数据类型
- 形式参数的改变不会影响实际参数的改变
- */
public class MethodDemo02 {
public static void main(String[] args) {
int x=5;
int y =6;
System.out.println(x+","+y);
add(x,y);
System.out.println(x+","+y);
}
public static void add(int x,int y){
System.out.println(x+","+y);
x=y;
y=x+y;
System.out.println(x+","+y);
}
}