1.方法的形式
修饰符 返回值类型 方法名( 形参列表 ){
方法体代码(需要执行的功能代码)
return 返回值;
}
2.方法的注意事项
方法不需要返回结果,则申明返回值类型为void;方法不需要参数,则形参列表可以不写
方法没有申明返回值类型,内部不能使用return返回数据
方法如果没有形参列表,调用的时候则不能传入参数值,否则报错
3.定义方法重点关注的是哪两点?
方法是否需要申明返回值类型
方法是否需要定义形参列表
4..计算1-n的和返回
package demo;
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入n:");
int n = sc.nextInt();
System.out.println("从1-n的和是:" + sum(n));
}
public static int sum(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += i;
}
return sum;
}
}
5.判断整数是奇数还是偶数
package demo;
import java.util.Scanner;
public class Test2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个数字:");
int n = sc.nextInt();
check(n);
}
public static void check(int number) {
if (number % 2 == 0) {
System.out.println(number + "是偶数");
} else {
System.out.println(number + "是奇数");
}
}
}
6.数组求最值
package demo;
public class Test3 {
public static void main(String[] args) {
int[] data = {23, 19, 25, 78, 34};
int max = getArrayMaxdata(data);
System.out.println(max);
}
public static int getArrayMaxdata(int[] arr) {
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
}
}
return max;
}
}
7.方法的调用流程
方法没有被调用时,在方法区的字节码文件中存放
方法被调用时,需要进入到栈内存中运行
8.java的参数传递机制:值传递
传输的是实参存储的值,不会改变实参本身
9.引用类型的参数传递
基本类型的参数传输存储的数据值
引用类型的参数传输存储的地址值
10.打印整型数组
package param;
public class Test1 {
public static void main(String[] args) {
int[] ages = {10, 20, 30, 40};
printArray(ages);
System.out.println("------------");
int[] numbers = {};
printArray(numbers);
}
public static void printArray(int[] arr) {
System.out.print("该数组内容为:[");
if (arr != null && arr.length > 0) {
for (int i = 0; i < arr.length; i++) {
// if (i == arr.length - 1) {
// System.out.print(arr[i]);
// } else {
// System.out.print(arr[i] + ",");
// }
System.out.print(i == arr.length - 1 ? arr[i] : arr[i] + ",");
}
}
System.out.println("]");
}
}
11.从数组中查询指定元素的索引
package param;
public class Test3 {
public static void main(String[] args) {
int[] arr = {11, 22, 33, 44, 55};
System.out.println("索引:" + searchIndex(arr, 33));
}
public static int searchIndex(int[] arr, int data) {
for (int i = 0; i < arr.length; i++) {
if (arr[i] == data) {
return i;
}
}
return -1;
}
}
12.比较两个数组是否一样
package param;
public class Test4 {
public static void main(String[] args) {
int[] arr1 = {10, 20, 30};
int[] arr2 = {10, 20, 30};
System.out.println(compare(arr1, arr2));
}
public static boolean compare(int[] arr1, int[] arr2) {
if (arr1.length == arr2.length) {
for (int i = 0; i < arr1.length; i++) {
if (arr1[i] != arr2[i]) {
return false;
}
}
return true;
} else {
return false;
}
}
}
13.方法重载:同一个类中,多个方法的名称相同,形参列表不同(修饰符和返回值类型都无所谓)
形参列表:形参个数、类型、顺序
不关心形参名称
14.return关键字可单独使用,立即跳出并结束当前方法的执行