1.专门去封装一段特定的业务逻辑功能
2.方法要尽可能独立,一个方法只干一件事
3.方法可以被反复多次调用
4.方法可以减少代码重复,有利于代码的维护
5.方法的五要素
修饰词 返回值类型 方法名(参数列表){
方法体
}
6.方法的修饰词:public static
7.方法可以有返回值,也可以没有返回值:
1.无返回值:返回值类型统一写成void
2.有返回值:返回值类型设计为特定的数据类型即可
何时有返回值,何时没有?
当方法执行完之后:
若不需要用到方法中的数据---------无返回值
若需要用到方法中的数据-----------有返回值
方法名:同变量名,小驼峰命名法,可以有参数也可以没有参数,有参数方法更灵活
假设random有参:
double a=Math.random(1,1000);//一到以前的随机数
double b=Math.random(); //无参
方法的调用:
有返回值:数据类型 变量 = 方法名(有参传参) // 声明一个对应类型的变量
无返回值:方法名直接写方法名有参传参
5.return:
1.return值:
(1)结束方法的执行
(2)返回结果给调用方-----此方式要用再有返回值的方法中
2.return; 用在无返回值的方法中
形参:定义方法时的参数叫形参
实参:调用方法时用的参数叫做实参
关于方法的嵌套调用:
public static void main(String[] args) {
say(); //调用方法名
//sayHi(); //编译错误,有参传参
//sayHi(12); //编译错误,参数类型不匹配
sayHi("张三");
sayHi("李四");
sayHello("张三",25);
sayHello("李四",112);
double a = getNum(); //getNum()的值就是return后的值
System.out.println(a); //2.3----模拟对返回值的后续操作
int b = plus(4,5);
System.out.println(b); //9,模拟对返回值的后续操作
int[] d = testArray();
System.out.println(d.length);
Arrays.sort(d); //对d进行升序排列
for (int i=0;i
无参无返回值
public static void say(){
System.out.println("呦~早上好");
}
有参无返回值
public static void sayHi(String name){
System.out.println("大家好,我叫"+name+"年龄这种东西随便啦");
}
public static void sayHello(String name,int age){
if(age>=50){ //在某种特定条件下,提前结束了方法
return; //结束方法
}
System.out.println("大家好,我叫"+name+",今年"+age+"岁了");
}
无参有返回值
java规定:
1.有返回值的方法中,必须要通过return来返回数据
2.并且return后数据的类型必须与返回值类型匹配
返回一个结果给调用方
public static double getNum(){
return 2.3; //结束方法的执行
}
有参有返回值
public static int plus(int num1,int num2){
int num = num1 +num2;
return num; //返回的是num里边的那个数
}
无参有返回值
public static int[] testArray(){
int[] arr =new int[10];
for(int i=0;i
数组的复制
在上边引入Array
a:源数组
b:目标数组
6:目标数组的长度
-------若目标数组的长度大于源数组长度,则末尾补默认值
-----若目标数组小于源数组长度,则将末尾的截掉
import java.util.Arrays;
public class ArrayDemo {
public static void main(String[] args) {
int[] a1 ={1,2,3,4,5};
int[] b1 =Arrays.copyOf(a,6);
}
}
数组的扩容
(创建了一个更大的新的数组并将数据复制进去了)
int[] a2 ={1,2,3,4,5};
a = Arrays.copyOf(a,a.length+1);
int[] arr =new int[10];
for (int i=0;i



