EduCoder Java程序设计---Java语言基础(十)- 方法的使用

本文通过六个关卡详细介绍了Java编程中方法的定义与调用,包括无参无返回值、有参有返回值、数组作为参数、方法重载等基本概念。每个关卡都包含具体的代码示例,展示了如何定义和调用不同类型的方法,旨在帮助初学者掌握Java编程基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第1关 如何定义方法

package step1;

public class HelloWorld {
	/********** Begin **********/

    //定义一个方法,用来和老师打招呼
    public static void way(){
        System.out.print("hello teacher!");
    }
	/********** End **********/	
    public static void main(String[] args) {

		/********** Begin **********/	
		
        //调用方法 
     
            way();     
    
		/********** End **********/
    }
}

第2关 掌握无参有返回值方法的调用

package setp7;
public class HelloWorld {

    public static void main(String[] args) {
		/********** Begin **********/

        // 调用calcAvg()方法,并将返回值保存在变量avg中
        double avg = calcAvg();

		/********** End **********/
    	System.out.println("平均成绩为:" + avg);
    }

    // 定义一个返回值为double类型的方法
	/********** Begin **********/
    public  static double  calcAvg() {
        double java = 92.5;
        double php = 83.0;
        double avg = (java + php) / 2; // 计算平均值

        // 使用return返回值
        return avg ;

	/********** End **********/
    }
}

第3关 掌握有参数无返回值方法的调用

package setp9;

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int score1 = sc.nextInt(); //第一门成绩
		int score2 = sc.nextInt(); //第二门成绩
		/********** Begin **********/
        // 调用方法,传入两门课程的成绩
        calcAvg(score1 , score2  );
		/********** End **********/
    }

    /*
     * 功能:计算两门课程考试成绩的平均分并输出平均分
     * 定义一个包含两个参数的方法,用来传入两门课程的成绩
     */

	/********** Begin **********/
  public static void calcAvg(int score1 , int score2){
    System.out.print("平均分:"+(score1+score2)/2) ;
  }

	/********** End **********/

}

第4关 掌握有参数有返回值方法的调用

package step3;

import java.util.Scanner;

public class HelloWorld {
    public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int i = sc.nextInt();   //获取第一个输入的整数
        int j = sc.nextInt();	//获取第二个输入的整数
		
		/********** Begin **********/
		//在这里调用方法获取返回值
		int max = getMax(i,j);
        System.out.println( i+"和"+j+"比较,最大值是:"  + max   );
		/********** End **********/
    }

	/*在这里创建getMax方法,以两个整数作为参数,返回两个整数中较大的值*/
    
	/********** Begin **********/
	public static int getMax(int i , int j ){
		return (i>j)?i:j;
	}

    /********** End **********/
}

第5关 掌握数组作为参数的使用

package setp10;
import java.util.Arrays;

public class HelloWorld {
    public static void main(String[] args) {
     
        int[] scores={79,52,98,81};
		/********** Begin **********/
        //调用方法,传入成绩数组,并获取成绩的个数
        int count= sort(scores);
		/********** End **********/
        System.out.println("共有"+count+"个成绩信息!");
    }

    /*
     * 功能:将考试成绩排序并输出,返回成绩的个数
     * 
     */
	/********** Begin **********/	
    public static int sort(int[]scores){
       // 数组从小到大排序处理
        for(int i = 0 ; i < scores.length-1 ; i++ ){
            for(int j = 0 ; j <scores.length-1 ; j++ ){
                int temp;
                if(scores[j]>scores[j+1]){
                    temp = scores[j];
                    scores[j] = scores[j+1];
                    scores[j+1] = temp;
                }
            }
        }
       // 打印出数组
        System.out.println(Arrays.toString(scores));
       //返回数组中元素的个数
        return scores.length;
    }
	/********** End **********/
}

第6关 方法的重载

package setp15;

/**
 * @author tangzhiqiang
 * @date 2018-04-25 22:31
 */
public class HelloWorld {
    public static void main(String[] args) {

		/********** Begin **********/
        // 调用无参的方法
        print();
        // 调用带有一个字符串参数的方法	
        print("educoder");
        // 调用带有一个整型参数的方法
        print(666);
        /********** End **********/
    }

    /********** Begin **********/
    // 无参print方法的定义
    public static void print(){
        System.out.println("无参的print方法");
    }
    // 字符串print方法的定义
    public static void print (String a){
        System.out.println("带有一个字符串参数的print方法,参数值为:"+a);
    }
    // 整型print方法的定义
    public static void print (int b){
        System.out.println("带有一个整型参数的print方法,参数值为:"+b);
    }
	
    /********** End **********/
}

第7关 选择题

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54ix5L2g55qE6Zi_55m9fg==,size_20,color_FFFFFF,t_70,g_se,x_16

第8关 方法通关挑战

package setp17;

import java.util.Arrays;
import java.util.Scanner;

public class HelloWorld {
	
    /********** Begin **********/
    /**
     * 第一题:定义一个方法 接收两个整数类型的参数 a和b,返回两个数的和  返回值类型为int 方法名为:getSum
     */
     public static int getSum(int a ,int b){
         return a+b;
     }
    /**
     * 第二题: 定义一个方法 接收三个double类型参数a,b,c, 返回这三个数的平均值 返回值类型为double 方法名为:getAvg
     */
     public static double getAvg(double a,double b, double c){
         return (a+b+c)/3;
     }

    /**
     * 第三题: 定义一个方法 接收两个参数 a 和b 打印a行 b列的一个矩形  不需要返回值   方法名为:printRect
     */
     public static void printRect(int a, int b){
         for(int i = 0 ; i < a ; i ++){
             for(int j = 0 ; j < b ; j++){
                 System.out.print("*");
             }
            System.out.println();
         }
     }
    
	/**
	 * 第四题:定以一个方法,接收整形数组 为参数  对这个数组进行升序排序  最后输出该数组 不需要返回值 方法名为 sortArr  
	 */
     public static void sortArr(int []arr){
         for(int i = 0 ; i < arr.length-1 ; i++ ){
             for(int j =0 ; j < arr.length-1 ; j++ ){
                 int temp;
                 if(arr[j]>arr[j+1]){
                     temp = arr[j];
                     arr[j] = arr[j+1];
                     arr[j+1] = temp;
                 }
             }
         }
         for(int i = 0 ; i < arr.length; i++){
             System.out.println(arr[i]);
         }
         
     }

补充:

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA54ix5L2g55qE6Zi_55m9fg==,size_20,color_FFFFFF,t_70,g_se,x_16

### Educoder Java 面向对象程序设计课程资料 #### 1. 教程概述 Educoder 提供了一系列关于Java面向对象编程的教程,这些资源旨在帮助学习者掌握从基础到高级的概念和技术。通过该平台的学习路径,学生可以逐步深入理解类、对象、继承、多态等核心概念[^1]。 #### 2. 主要模块介绍 - **基础知识** - 类与对象创建:讲解如何定义类以及实例化对象的方法- 变量作用域:探讨局部变量和成员变量的区别及其生命周期管理。 - **高级特性** - 继承机制详解:描述子父类之间的关系建立方式及方法重写技巧。 - 接口实现指南:说明接口的作用并指导开发者正确运用抽象类和接口来构建灵活的应用架构。 - **实践项目** - 小型案例分析:提供多个实际应用场景下的编码练习机会,如图书管理系统开发等。 - 大作业挑战:鼓励学员综合所学完成更复杂的软件工程项目,增强解决问题的能力。 #### 3. 学习支持服务 除了丰富的在线文档外,还设有专门的技术论坛用于解答疑问;定期举办直播讲座邀请行业专家分享经验心得;更有助教团队随时待命协助处理遇到的各种难题。 ```java // 示例代码展示简单的Java OOP特征 public class Animal { private String name; public Animal(String name) { this.name = name; } public void sound() { System.out.println(name + " makes a sound."); } } class Dog extends Animal { public Dog(String name) { super(name); } @Override public void sound() { System.out.println(getName() + " barks loudly!"); } private String getName(){ return ((Animal)this).name; } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值