JAVA入门知识点+案例介绍(第十集)
📋个人简介
📜个人简介 :
🎅 作者简介:大家好,我是迈热✌️
🌝 支持一下:点赞👍+收藏🌟+留言📪
📣 系列专栏:java基础🍁
✉️格言:先把键盘敲烂再说💻往死里敲!🌞
🌞学习前的小唠叨
🌈哈喽 兄弟萌! 我们都在想成为大佬的路上加油着👍
既然我们已经踏入了学习这一长路, 那么就把它做的让
自己满意为止💜 加油兄弟萌!!!!😝
@[TOC](目录)
🍄 前言
🍊这一期我们来学习有关定义方法的知识点和案例🍊
🐳知识点回顾
🌱🌱经过上一期的学习,我们知道了什么是方法了,怎么定义,怎么使用,以及调用。下面我们浅回顾一下上期的知识点。
💦1.1 浅回顾
- 🍒🍒一般情况下,定义一个方法的语法是:
访问修饰符 返回值类型 方法名(参数列表){
方法体
}
-
🍒🍒 其中:
-
🌿 访问修饰符:在现阶段你只需要记住访问修饰符都用public即可;
-
🌿 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为void;如果方法具有返回值,则需要指定返回值的类型,并且在方法体中使用return语句返回值;
-
🌿 方法名:定义的方法的名字,必须使用合法的标识符;
-
🌿 参数列表:传递给方法的参数列表,参数可以有多个,多个参数间以逗号隔开,每个参数由参数类型和参数名组成,以空格隔开。
-
-
🍒🍒 根据方法是否带参、是否带返回值,可将方法分为四类:
-
🌿 无参无返回值方法;
-
🌿 无参带返回值方法;
-
🌿 带参无返回值方法;
-
🌿 带参带返回值方法。
-
🐳掌握数组作为参数的使用
浅回顾完上期内容之后我们学习数组作为参数的使用吧!!
💦1.1 相关知识汇总
- 🍒🍒首先来个数组作为参数的例子:
- 🍁 定义一个getarr的方法,方法的参数用一个数组去作为形参,在main函数中用静态的方式去创一个数组并赋值
- 🍁 再用for循环去遍历数组并打印
- 🍁 再去main函数去调用getarr方法
public class Demo{
public static void main(String[] args) {
// 调用方法时传递一个数组
int [] arr = {1 ,2 ,3 }; //静态的方式创arr
getarr(arr);
}
public static void getarr(int [] arr){
for(int i = 0 ; i < arr.length ;i++){
// 打印数组
System.out.println(data[i]);
}
}
- 🍒🍒 输出结果:
1
2
3
💬 注意:
- 🍒🍒 快速输出数组的方法:
System.out.println(Arrays.toString(要输出的数组));
🐳案例一:数组作为参数有关案例
学完上述内容之后我们用一个小案例来总结一下上述内容吧!!
💦1.1 案例一需求
- 🍒🍒 需求:将考试成绩排序并输出,并返回成绩的总个数
💦1.2 案例一代码演示
- 🍒🍒代码:
import java.util.Arrays;
public class Demo {
public static void main(String[] args) {
int[] scores={76,43,95,87};
//调用方法,传入成绩数组,并获取成绩的个数
int count= getScore(scores);
System.out.println("共有"+count+"个成绩信息!");
}
public static int getScore( int [] scores){
// 数组从小到大排序处理
Arrays.sort(scores);
// 打印出数组
System.out.println(Arrays.toString(scores));
//返回数组中元素的个数
return scores.length;
}
}
- 🍒🍒结果:
🐳方法的重载
学完上述内容之后我们学习方法的重载吧!!
💦1.1 什么是方法的重载
- 🍒🍒定义:如果同一个类中包含了两个或两个以上方法名相同,方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
- 🍒🍒 下面 3 个方法名称都为 show ,但方法的参数有所不同,因此都属于方法的重载
public static void show(){
System.out.println("无参show方法的调用" );
}
public static void show(String name){
System.out.println("我的名字叫:"+name );
}
public static void show(String name,int age){
System.out.println("哈喽"+name+","+"你"+age+"岁" );
}
💦1.2 那么怎么区分调用的是哪个重载方法
- 🍁 在第一个show方法中,没有任何形参,就一个输出语句
- 🍁 在第二个show方法中,我们就有一个形参。
- 🍁 在第三个show方法中,我们有两个形参,而且两形参数据类型不同
- 🍁 当调用被重载的方法时,Java会根据参数的个数和类型来判断应该调用哪个重载方法,参数完全匹配的方法将被执行。例如:
public class Demo{
public static void main(String[] args) {
// 调用无参的方法
print();
// 调用带有一个字符串参数的方法
print("码农");
// 调用带有一个整型参数的方法
print("码农01",20);
}
}
💦1.3 判断方法重载的依据
-
1️⃣ 🍒🍒 必须是在同一个类中;
-
2️⃣ 🍒🍒 方法名相同;
-
3️⃣ 🍒🍒 方法参数的个数、顺序或类型不同;
-
4️⃣ 🍒🍒 与方法的修饰符或返回值没有关系。
💬 注意:
- 🍒🍒 方法重载:在同一个类中,方法名相同,参数类型不同。
🐳案例二:综合案例(知识点汇总)
学习了三期方法的使用,接下来我没用一个总和案例来总结这三期的知识点!!
💦1.1 案例二需求
- 🍒🍒 需求:
-
🍁 定义一个方法,接收两个int类型的参数 a和b,求两个数的和,方法名为:getSum;
-
🍁 定义一个方法,接收三个double类型参数a,b,c, 返回这三个数的平均值 返回值类型为double,方法名为:getAvg;
-
🍁 定义一个方法,接收两个整数 a 和b 打印a行 b列的一个矩形,方法名为:show;
-
🍁 定以一个方法,接收整形数组为参数,对这个数组进行升序排序,最后输出该数组,方法名为:getArr;
-
🍁 定义一个方法,完成9 9乘法表的打印,方法名为 :Print99。
-
💦1.2 案例二代码演示
- 🍒🍒代码:
import java.util.Arrays;
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
int sum = getSum(10, 20);
System.out.println(sum);
System.out.println("-------------");
double avg = getAvg(12.2, 13.2, 14.3);
System.out.println(avg);
System.out.println("-------------");
show(2,3);
System.out.println("-------------");
int[]arr={5,7,12,9,32};
getArr(arr);
System.out.println("-------------");
Print99();
}
public static int getSum(int a ,int b){
int sum = a + b;
return sum;
}
public static double getAvg(double a ,double b,double c){
double avg = (a + b + c) / 3;
return avg;
}
public static void show(int a , int b){
for (int i = 1 ; i <= a ;i++) {
for (int k = 1 ; k <= b;k++){
System.out.print("*");
}
System.out.println();
}
}
public static void getArr(int[] arr){
for(int i = 0; i< arr.length-1;i++){
for(int j = i+1; j< arr.length;j++){
if(arr[i] > arr[j]){
int tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
}
for(int i = 0; i< arr.length;i++){
System.out.println(arr[i]);
}
}
public static void Print99() {
for (int i = 1 ; i<=9;i++) {
for (int j = 1;j <= i ;j++) {
System.out.print(j + " * " + i + " = " + i * j + "\t");
}
System.out.println();
}
}
}
- 🍒🍒结果:
💻 结语
🍻🍻到这我们的任务就结束啦!!!🌝
感谢大家的阅读 如果在内容方面有什么问题的话可以
在评论区或私信告诉我吧
博主小要求🙏🙏 如果这段对大家有用的话 就给博主
一个免费的点赞👍+评论✉️ +收藏💻吧!!!
感谢大家啦💙💙💙
- 点赞
- 收藏
- 关注作者
评论(0)