一、知识点(必做):
MethodDemo1.java(重点)
需求:定义求两个整数之和的方法
步骤:
(1)定义方法
确定方法名,修饰符(暂时使用public static)确定是否需要形式参数确定是否需要返回
(2)调用方法
确定调用语法(暂时类名调用方法)确定需要传入什么实际参数确定是否需要定义变量接收返回值
package _text_day06;/*** 需求:定义求两个整数之和的方法* 步骤:* (1)定义方法* 确定方法名,修饰符(暂时使用public static)* 确定是否需要形式参数* 确定是否需要返回** (2)调用方法* 确定调用语法(暂时类名调用方法)* 确定需要传入什么实际参数* 确定是否需要定义变量接收返回值*/public class MethodDemo1 {// 确定方法名,修饰符(暂时使用public static),形式参数public static int getInt(int num1, int num2){int result =num1+num2;// 确定返回值return result;}public static void main(String[] args) {// 定义实参int num1=20;int num2=10;// 定义变量接收返回值int result;result=getInt(num1,num2);// 输出结果System.out.println("两个整数之和 "+result);}}总结:在main方法外定义一个方法,给定形参,根据题意列出关系式,确定是否需要返回值在main方法内定义实参(给形参赋值),定义变量接受返回值,返回值即输出结果
MethodDemo2.java(重点)
需求2:定义一个方法,传入一个int数组,按照格式打印int类型数组
步骤:
(1)定义方法
(2)实现方法体
(3)调用方法
需求3:定义一个方法,传入一个int数组,返回指定元素在数组中第一次出现的索引
步骤:
(1)定义方法
(2)实现方法体
遍历数组
如果当前元素和指定元素相同,返回当前元素所在的索引
遍历所有元素后,发现找不到则返回-1,表示找不到索引
(3)调用方法
public class MethodDemo2 {// 定义方法// 实现方法体public static void printArr(int[] arr) {String str = "[";for (int i = 0; i < arr.length; i++) {str = str + arr[i];if (i == arr.length - 1) {str = str + "]";} else {str = str + ",";}}System.out.println(str);}public static void main(String[] args) {int[] arr = new int[]{1, 2, 4, 6, 7};// 调用方法MethodDemo2.printArr(arr);}}package _text_day06;/*** 需求2:定义一个方法,传入一个int数组,按照格式打印int类型数组* 步骤:* (1)定义方法* (2)实现方法体* (3)调用方法* 需求3:定义一个方法,传入一个int数组,返回指定元素在数组中第一次出现的索引* 步骤:* (1)定义方法* (2)实现方法体* 遍历数组* 如果当前元素和指定元素相同,返回当前元素所在的索引** 遍历所有元素后,发现找不到则返回-1,表示找不到索引* (3)调用方法*/public class MethodDemo2 {// 定义方法// 实现方法体public static int indexOf(int[] arr, int key) {for (int i = 0; i < arr.length; i++) {if (arr[i] == key) {return i;}}return -1;}public static void main(String[] args) {int[] arr = new int[]{1, 2, 4, 6, 7};// 调用方法int index = indexOf(arr, 3);System.out.println(index);}}
二、 综合练习(必做):
MethodDemo3.java
需求1:定义一个方法getSum,计算两个整数数组元素的之和,并把求和结果返回。
需求2:定义一个方法printArray,按照格式打印数组中非0的元素,例如{1,0,2,3,0,4,5}打印出来应该为[1,2,3,4,5]
// 思路提示:// step 1: 声明一个数组int[] arr = {1,0,2,3,0,4,5}// step 2: 将arr中非0元素保存一个新数组newArr中// step 3: 把新数组newArr中的元素按照指定格式( [x,x,x] )打印数组元素
需求3:定义一个方法getFactorial,求出n!的结果.阶乘公式为n! = 1*2*...*n.
//定义一个方法getSum,计算两个整数数组元素的之和,并把求和结果返回。public class MethodDemo3{public static void main(String[] args){int sum = getSum(2,4);System.out.println("和为:" + sum);} //求和方法public static int getSum(int a, int b){return a + b;}}//定义一个方法printArray,按照格式打印数组中非0的元素,例如{1,0,2,3,0,4,5}打印出来应该为`[1,2,3,4,5]//定义一个方法getFactorial,求出n!的结果.阶乘公式为`n! = 1*2*...*n`.public class MethodDemo3{public static int getFactorial(int n) {int sum = 1;int sumn = 0;for (int i = 1; i <= n; i++) {sum *= i;System.out.println(sum);sumn += sum;}System.out.println(“从1到” + n + “的阶乘和为:” + sumn);return sum;}public static void main(String[] args){getFactorial(10);}}
AvgDemo.java
需求:定义一个方法接收一个 int 类型的二维数组,返回所有元素平均值(int 类型)。
提示:int[] arr = {{0,1,2},{3,4}}所有元素之和的平均值:( 0 + 1 + 2 + 3 + 4) / 5.0 = 2.0
package _text_day06;/*** 需求:定义一个方法接收一个 int 类型的二维数组,返回所有元素平均值(int 类型)。*/public class AvgDemo {public static int getAvg(int aa[][] ){int sum=0;for (int i=0;i<aa.length;i++){for (int j=0;j<aa.length;j++){sum+=aa[i][j];}} return sum/aa.length-2;}public static void main(String[] args) {int[][] aa = {{0,1,2},{3,4}};int avg= getAvg(aa);System.out.println(avg);}}
三、拓展练习(选做)
CombineDemo.java
需求:定义一个名为combineArrays的方法,以两个int类型的数组arr1和arr2作为参数,实现将arr1和arr2两个数组合并为一个新的一维数组,并返回合并后的新数组。
例如:arr1={1,2},arr2={3,4},则该方法应该返回{1,2,3,4}。
思路:
(1)先求出符合要求的元素个数
(2)创建一个新的数组存放符合要求的元素
(3)将符合要求的元素存放到新的数组中
