Android Calendar

这篇具有很好参考价值的文章主要介绍了Android Calendar。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.字符串日期比较大小

    public static boolean compareDate(String pre, String last) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date lastDate = sdf.parse(last);
            Calendar lastCal = Calendar.getInstance();
            lastCal.setTime(lastDate);

            Date preDate = sdf.parse(pre);
            Calendar preCal = Calendar.getInstance();
            preCal.setTime(preDate);

            
            return preDate.after(lastDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return false;
    }

2.计算字符串日期相差多少天

    public static int getDays(String pre, String last) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date lastDate = sdf.parse(last);
            Calendar lastCal = Calendar.getInstance();
            lastCal.setTime(lastDate);

            Date preDate = sdf.parse(pre);
            Calendar preCal = Calendar.getInstance();
            preCal.setTime(preDate);

            long diff = lastCal.getTimeInMillis() - preCal.getTimeInMillis();
            float dayCount = (float) diff / (24 * 60 * 60 * 1000);
            return (int) dayCount;
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return 0;
    }

3.获取上午、下午

    /***
     * 获取上午还是下午
     */
    public static String getDateAmOrPm() {
        String nihao = "";
        Calendar cal = Calendar.getInstance();
        //测试代码
        //cal.set(Calendar.HOUR_OF_DAY, 15);
        if (cal.get(Calendar.AM_PM) == Calendar.AM) {
            nihao = "上午好";
        } else {
            nihao = "下午好";
        }
        return nihao;
    }

4.获取问好

    /***
     * 根据Calendar的hour来判断
     */
    public static String getDateSx() {
        String nihao = "";
        Calendar cal = Calendar.getInstance();
        int hour = cal.get(Calendar.HOUR_OF_DAY);
        if (hour >= 6 && hour < 8) {
            System.out.println("早上好");
            nihao = "早上好";
        } else if (hour >= 8 && hour < 11) {
            System.out.print("上午好");
            nihao = "上午好";
        } else if (hour >= 11 && hour < 13) {
            System.out.print("中午好");
            nihao = "中午好";
        } else if (hour >= 13 && hour < 18) {
            System.out.print("下午好");
            nihao = "下午好";
        } else {
            System.out.print("晚上好");
            nihao = "晚上好";
        }
        return nihao;
    }

5.获取周几

    public static String[] weeks = new String[]{"周日", "周一", "周二", "周三", "周四", "周五", "周六"};

    public static String getWeekday() {
        Calendar calendar = Calendar.getInstance();
        String weekday = weeks[calendar.get(Calendar.DAY_OF_WEEK) - 1];
        return weekday;
    }

6.获取字符串年月日

    @RequiresApi(api = Build.VERSION_CODES.M)
    public static String convert(String dateString) {
        if (TextUtils.isEmpty(dateString)) return "";
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        try {
            Date date = format.parse(dateString);
            Calendar calendar = Calendar.getInstance();
            calendar.setTime(date);

            StringBuilder timestamp = new StringBuilder();
            timestamp.append(calendar.get(java.util.Calendar.YEAR) + "-");
            int month = calendar.get(java.util.Calendar.MONTH) + 1;
            if (month < 10) {
                timestamp.append("0" + month + "-");
            } else {
                timestamp.append(month + "-");
            }
            int day = calendar.get(java.util.Calendar.DAY_OF_MONTH);
            if (day < 10) {
                timestamp.append("0" + day);
            } else {
                timestamp.append(day + "");
            }
            
            return timestamp.toString();
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return "";
    }

7.获取昨天

java.util.Calendar calendar = java.util.Calendar.getInstance();
calendar.add(java.util.Calendar.DAY_OF_MONTH, -1);

文章来源地址https://www.toymoban.com/news/detail-620078.html

到了这里,关于Android Calendar的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android studio导入Android源码(AOSP Android 14)

    1. 完整编译AOSP源码 有些java文件是在编译过程中动态生成的,需要完整编译一遍,源码的依赖才能完整。 2. 生成IDE导入的工程文件 执行完成后,在AOSP根目录下生成文件: 3. 导入前,编辑工程文件 (这步很重要,影响代码的加载速度和跳转) 编辑android.iml文件,需要修改2部

    2024年02月10日
    浏览(44)
  • Android入门教程||Android 架构||Android 应用程序组件

    Android 操作系统是一个软件组件的栈,在架构图中它大致可以分为五个部分和四个主要层。 在所有层的最底下是 Linux - 包括大约115个补丁的 Linux 3.6。它提供了基本的系统功能,比如进程管理,内存管理,设备管理(如摄像头,键盘,显示器)。同时,内核处理所有 Linux 所擅

    2024年02月13日
    浏览(45)
  • kotlin Calendar打印每天的信息

    2024年02月11日
    浏览(30)
  • Java中Calendar类用法详解

    Java 中的 Calendar 类是一个抽象类,它提供了一组方法用于操作日期和时间。 以下是 Calendar 类的详细用法: 目录 1. 获取 Calendar 实例: 2. 获取和设置日期和时间: 3. 计算日期和时间: 4. 格式化日期和时间: 要获取 Calendar 实例,可以使用以下 静态方法 之一: Cale

    2024年02月14日
    浏览(60)
  • Java中Calendar日期类介绍

            Calendar 类是一个抽象类,它为特定瞬间与 YEAR 、 MONTH 、 DAY_OF—MONTH 、 HOUR 等日历字段之间的转换提供了一些方法,并为操作日历字段(如获得下星期的日期) 提供了一些方法。         创建 Calendar 对象不能使用 new ,因为 Calendar 类是一个抽象类,但是

    2024年02月03日
    浏览(38)
  • 【Android】Android虚拟机

    Android的虚拟机主要有两种: Dalvik 虚拟机 和 ART(Android Runtime)虚拟机 。 Dalvik 虚拟机 Dalvik 虚拟机是 Android 早期使用的虚拟机,它 基于寄存器架构 。从Android 2.2版本开始,支持 JIT即时编译(Just In Time) 在程序运行的过程中进行选择热点代码(经常执行的代码)进行编译或者

    2024年02月07日
    浏览(40)
  • Android 面试(Android 篇)

    原理: 触发条件: 引起条件: 查看方式 避免建议: 原因 解决 扩展 内存抖动 内存溢出 扩展: 内存泄漏 问:常见的内存泄露有哪些?如何解决? 问:为什么单例模式会持有当前activity的引用,无法释放 备注: standard:标准模式, 2 从 A 跳转 B 3 从 B 跳转 A singleTop 栈顶复用模

    2024年02月04日
    浏览(34)
  • Android版本API对应表(Android9.0-Android 14.0)

    Android 14(API 级别 34) Android 13(API 级别 33) Android 12(API 级别 31、32) Android 11(API 级别 30) Android 10(API 级别 29) Android 9(API 级别 28) 参考文档

    2024年02月02日
    浏览(38)
  • [Android] Android架构体系(2)

    [Android] Android架构体系(1) 抛开合法性问题不提,相对于GLibC,Bionic 也可以算是非常轻量级的了,而且对于Android所要达成的目标,Bionic 也更为有效。Bionic 中去掉的下列这些特性的原因或是认为没有必要或是认为太过复杂。 由于系统用是使用得非常频繁的,所以 Boinic 想要通过

    2024年01月19日
    浏览(106)
  • [Android] Android架构体系(1)

    Android 取得成功的关键因素之一就是它丰富的框架集。 没有这些框架,Android 可能会和其他一些嵌入式 Linux 发布版本一样混得很差。 通过提供各种框架,Android 让应用可以很方便地创建进程,允许开发者使用高级的 Java 语言而不是底层的 C/C++语言进行编程。各种框架的不断增加

    2024年01月18日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包