Java入门六

举报
Echo_Wish 发表于 2022/07/12 16:46:52 2022/07/12
【摘要】 Java基础方法的重载重载就是在一个类中,有相同的函数名称,但形参不同的函数重载的规则:方法名称必须相同参数列表必须不同(如个数不同,类型不同,排列不同等)方法的返回类型可以相同也可以不相同仅仅返回类型不同不足以成为方法重载public class Demo02 { public static void main(String[] args) { int max=max...

Java基础

方法的重载
重载就是在一个类中,有相同的函数名称,但形参不同的函数
重载的规则:
方法名称必须相同
参数列表必须不同(如个数不同,类型不同,排列不同等)
方法的返回类型可以相同也可以不相同
仅仅返回类型不同不足以成为方法重载

public class Demo02 {
    public static void main(String[] args) {
        int max=max(10,10); //方法调用
        double large=max(20.4,25.9);
        System.out.println(max);
    }
    //方法定义
    public static int max(int a,int b){
        if(a>b)
            return a;
        else
            return b;
    }
    //方法重载
    public static double max(double a,double b){
        if(a>b)
            return a;
        else
            return b;
    }
}

命令行传递参数
mian方法也可以传递参数
可变参数
jdk5后java支持传递同类型的可变参数给一个方法
在方法声明中,在指定参数类型后加一个省略号(…)
一个方法只能制定一个可变参数,他必须是方法的最后一个参数。任何普通的参数必须在他之前声明。
和数组有点相似。类似于定义了一个长度位置数组参数

public class Demo02 {
    public static void main(String[] args) {
        printMax(2,8,9,7,55,6,7,132,4,5);
        printMax(new int[] {1,2,3,4,5});
    }
    //方法定义
    public static void printMax(int...number){
        if(number.length==0){
            System.out.println("No argument passed");
            return;
        }

        int max=number[0];
        for(int i=0;i<number.length;i++)
            if(max<number[i])
                max=number[i];

        System.out.println(max);
    }
}

以上内容均是参考别人博客的文章,个人觉得讲解的非常仔细。

下面附上一个打印当月的日历的小程序:

代码如下:

package com.javatest.datetest;

import java.time.*;

/*
 * @version 1.0
 * @author Tan name
 * 该类功能可实现打印本月的日期
 */
public class DateTest {

	public static void main(String[] args) {
		//创建date对象
		LocalDate date = LocalDate.now();
		//获取月份
		int month = date.getMonthValue();
		//获取日期
		int today = date.getDayOfMonth();
		
		//将日期调整为每月的第一天
		date = date.minusDays(today - 1);
		//创建weekday对象
		DayOfWeek weekday = date.getDayOfWeek();
		//返回获取1-7的数字代表礼拜一到礼拜天
		int value = weekday.getValue();
		
		//System.out.println(value);
		System.out.println("Mon Tue Wed Thu Fri Sat Sun");
		for (int i=1;i<value;i++) {
			System.out.print("    ");
		}
		while (date.getMonthValue() == month) {
			System.out.printf("%3d",date.getDayOfMonth());
			if (date.getDayOfMonth() == today) {
				System.out.print("*");
			}
			else {
				System.out.print(" ");
			}
			date = date.plusDays(1);
			if (date.getDayOfWeek().getValue() == 1) {
				System.out.println();
			}
		}
		if (date.getDayOfWeek().getValue() != 1) {
			System.out.println();
		}
	}

}

觉得还很有意思,可供参考。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。