精华内容
下载资源
问答
  • 2022-02-12 20:19:05

            参加蓝桥杯,现在把我认为好一点的算法记录下来。

            看到蓝桥杯真题有些是有和日期相关的题。这些题大部分是要判断一个日期是否合法。然后我就总结出了一个通俗易懂的算法。希望能用得上。

    public static boolean juge(int date) {
            
            //先将年月日取出来
            int year = date / 10000;
            int month = (date % 10000) / 100;
            int day = date % 100;
    
            //定义一个数组,数组里是每个月的合法天数
            int[] arr = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
    
            //判断平年闰年
            if ( ( year % 4 == 0 && year % 100 != 0 ) || ( year % 400 == 0 ) ) {
                arr[1] = 29;//闰年二月有29天
            } else {
                arr[1] = 28;//平年二月有28天
            }
    
            //首先月份只有1到12月
            if (month > 0 && month < 13) {
                if ( day <= arr[month - 1] && day > 0 ) {  //天数从0到该月的最大天数
                    return true;  //如果合法,返回true
                }
            }
            return false;
        }

            这个算法传入的参数是int类型,格式像:20200202,20220212,19491001,这种。以上三个日期当然是正确的,但像20191314,20030229,20250000,这些就不合法了。

            以下是代码测试: 

    public class Main {
        public static void main(String[] args) {
    
            int a = 20200202;
            int b = 20220212;
            int c = 19491001;
            int d = 20191314;
            int e = 20030229;
            int f = 20250000;
    
            System.out.println(juge(a));
            System.out.println(juge(b));
            System.out.println(juge(c));
            System.out.println(juge(d));
            System.out.println(juge(e));
            System.out.println(juge(f));
    
        }

             输出结果如下:

    true
    true
    true
    false
    false
    false
    更多相关内容
  • 下面小编就为大家带来一篇JS判断日期格式是否合法的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • 使用python实现某天日期是否合法,日期可以以标准形式输入,输出该日期,并给出是否合法。代码简单易懂。
  • 给大家介绍了如何利用Python判断数独是否合法,对大家学习python有一定的参考借鉴价值,有需要的可以一起来看看。
  • 今天小编就为大家分享一篇关于Python判断变量名是否合法的方法示例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
  • 主要介绍了详解Javascript判断Crontab表达式是否合法的相关资料,需要的朋友可以参考下
  • 主要介绍了javascript简单判断输入内容是否合法的方法,以验证用户名是否为数字与字母组成为例,分析了javascript正则验证的思路与实现方法,需要的朋友可以参考下
  • 离散数学——判断是否合法,这是离散数学中很简单的一个实验,只需要对输入的公式判断是否合法就可以了。包里有两个版本,其中一个只需要30行代码!!!!(简直不要太简单)
  • is_number(oracle函数判断字段是否合法数字)
  • 使用shell校验IP地址合法性 使用方法: 代码如下:[root@yang python]# bash check_ip.sh IP地址执行结果:返回值0校验合法,非0不合法。shell代码: 代码如下:[root@yang python]# vi check_ip.sh #!/usr/bin/...
  • 今天小编就为大家分享一篇Python正则匹配判断手机号是否合法的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 主要介绍了js判断上传文件后缀名是否合法的具体方法,以一个完整实例分析了javascript判断上传文件后缀名是否合法的方法,感兴趣的小伙伴们可以参考一下
  • 主要为大家详细介绍了python如何判断IP地址合法性,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 主要介绍了php正则判断是否合法身份证号的方法,涉及php针对数字的正则及字符串操作相关技巧,需要的朋友可以参考下
  • 摘要:C#源码,字符处理,身份证 C#判断身份证是否合法,若输入的字符串位数或格式不正确,或者身份证号所规定的性别错误,则会给出提示告诉你身份证号是否合法,程序运行效果如上图所示。
  • 主要介绍了Java 判断IP地址的合法性实例详解的相关资料,需要的朋友可以参考下
  • 主要介绍了Shell脚本实现IP地址合法判断,本文给出了实现代码和运行代码,需要的朋友可以参考下
  • 判断地址是否合法
  • 输入email地址使用c#语言检测出email地址是否合法的,这篇文章主要介绍了c#判断email地址是否合法的相关资料,需要的朋友可以参考下
  • 今天小编就为大家分享一篇python实现判断一个字符串是否合法IP地址的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 主要介绍了Python判断字符串是否合法标示符操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • java如何判断邮箱是否合法java判断邮箱是否合法的方法:使用正则表达式判断,代码为【boolean b=matcher.matches();if (b) {System.out.println(mail+"有效的邮箱地址!");】。【相关学习推荐:java基础教程】java...

    java如何判断邮箱是否合法

    java判断邮箱是否合法的方法:使用正则表达式判断,代码为【boolean b=matcher.matches();if (b) {System.out.println(mail+"有效的邮箱地址!");】。

    0dc06d3a342d50af391df5fe47970a4e.png

    【相关学习推荐:java基础教程】

    java判断邮箱是否合法的方法:

    使用了正则表达式来进行判断,代码实现如下:public class Test {

    public static void main(String[] args) {

    //电子邮件

    String check = "^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$";

    Pattern regex = Pattern.compile(check);

    Matcher matcher = regex.matcher("dffdfdf@qq.com");

    boolean isMatched = matcher.matches();

    System.out.println(isMatched);

    }

    public static void main(String[] args) {

    Scanner scanner=new Scanner(System.in);

    String mail=null;

    System.out.println("请输入E-Mail:");

    mail=scanner.next();

    Pattern pattern=Pattern.compile("\\w+@(\\w+.)+[a-z]{2,3}");//\w表示a-z,A-Z,0-9(\\转义符)

    Matcher matcher=pattern.matcher(mail);

    boolean b=matcher.matches();

    if (b) {

    System.out.println(mail+"有效的邮箱地址!");

    }else {

    System.out.println(mail+"的格式错误!!");

    }

    }

    javascript电子邮箱的合法性验证/**

    *

    */

    function isEmail(email)

    {

    var srt=/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/;

    if(srt.test(email))

    {

    //不合法时

    return false;

    }

    else

    {

    //合法时

    return true;

    }

    }

    }

    public static boolean validateEmail(String email) {

    boolean flag = false;

    int pos = email.indexOf("@");

    if (pos == -1 || pos == 0 || pos == email.length() - 1) {

    return false;

    }

    String[] strings = email.split("@");

    if (strings.length != 2) {// 如果邮箱不是xxx@xxx格式

    return false;

    }

    CharSequence cs = strings[0];

    for (int i = 0; i < cs.length(); i++) {

    char c = cs.charAt(i);

    if (!Character.isLetter(c) && !Character.isDigit(c)) {

    return false;

    }

    }

    pos = strings[1].indexOf(".");// 如果@后面没有.,则是错误的邮箱。

    if (pos == -1 || pos == 0 || pos == email.length() - 1) {

    return false;

    }

    strings = strings[1].split(".");

    for (int j = 0; j < strings.length; j++) {

    cs = strings[j];

    if (cs.length() == 0) {

    return false;

    }

    for (int i = 0; i < cs.length(); i++) {//如果保护不规则的字符,表示错误

    char c = cs.charAt(i);

    if (!Character.isLetter(c) && !Character.isDigit(c)) {

    return false;

    }

    }

    }

    return true;

    }相关学习推荐:javascript学习教程

    java如何判断邮箱是否合法的教程已介绍完毕,更多请关注跳墙网其他文章教程!

    java如何判断邮箱是否合法相关教程

    展开全文
  • 要求:1)以命令行格式运行:ip_test subnet/mask ip_addr ...4) 在IP地址合法的前提下,判断ip_addr是否属于子网subnet 5)输出命令行中的IP是否合法,掩码是否合法(可适当给出不合法原因)以及ip_addr
  •  很多时候我们都是通过一组正则表达式来判断用户输入的身份证是否合法,那在用正则表达式判断之前,你对身份证号的组成有多少了解呢?下面来说说一个身份证号里面包含了多少的信息:  1、号码的结构  公民身份...
  • 摘要:C#源码,菜单窗体,输入验证 C#判断输入数据的合法性,也就是判断用户输入的数据的正确性,不正确则给出提示,正确则提交表单。
  • 判断日期经常合法出现在IO场景下,下面将尽量使用简练的思路和代码呈现给大伙! 实现思路: 1、声明并初始化一个整型数组,表示各个月中最大的天数,数组长度刚好为12(注意:该数组在平年条件下使用) 2、定义一...

    判断日期经常合法出现在IO场景下,下面将使用简练的思路和代码呈现给大伙!

    实现思路:

    1、声明并初始化一个整型数组,表示各个月中最大的天数,数组长度刚好为12(注意:该数组在平年条件下使用)

    2、定义一个方法,判断用户输入的月份是否在[1,12]区间,然后再判断年份是平年还是闰年,最后根据年份的类型去判断天数是否正确(利用数组去判断)

    这里大家可能有些疑问?

    Q1 : 为什么使用数组代表最大天数?

    A1:因为各个月的天数规律并不像月份那样明显(月份是递增序列),而利用数组表示天数可以达到一个以空间换时间的目的,减少的if else的分支代码。

    完整代码如下:

    import java.util.Scanner;
    
    public class CheckDate{
        //各个月中最大天数
        private static int[] days = {31,28,31,30,31,30,31,31,30,31,30,31};
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.println(judge(sc.nextInt(),sc.nextInt(),sc.nextInt()));
        }
    
        //判断日期合法性
        public static boolean judge(int year, int month, int day){
            //首先判断月份是否合法
            if (month >= 1 && month <= 12){
                //判断是否为闰年
                if ((year % 100 == 0 && year % 400 == 0) || year % 4 == 0){
                    //判断当前月份是否为2月,因为闰年的2月份为29天
                    if (month == 2 && day <= 29) return true;
                    else {
                        if (day <= days[month-1]) return true;
                    }
                }else {
                    if (day <= days[month-1]) return true;
                }
            }
            return false;
        }
    }

    运行效果:2021为平年,2月只有28天,所以返回false

    如果该篇文章对您有帮助,可以点个💖加收藏,同行作伴,一路逐梦~

    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 329,606
精华内容 131,842
关键字:

如何判断网站是否合法