当前位置: 首页 > 知识库问答 >
问题:

LocalDate-解析区分大小写

关冠宇
2023-03-14
public class Solution {

    public static void main(String[] args) {
        System.out.println(isDateOdd("MAY 1 2013"));
    }

    public static boolean isDateOdd(String date) {

        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMM dd yyyy");
        formatter = formatter.withLocale(Locale.ENGLISH); 
        LocalDate outputDate = LocalDate.parse(date, formatter);
        return ((outputDate.getDayOfYear()%2!=0)?true:false);
    }
}

我想知道,如果从年初到某个日期过去的天数是奇数。我尝试使用LocalDate从我的字符串(Maying 1 201 3)中解析日期,但我得到错误:

共有1个答案

蔚琦
2023-03-14

如果要使用所有大写字母的月份输入,例如may,则必须使用不区分大小写的DateTimeFormatter:

public static boolean isDateOdd(String date) {
    DateTimeFormatter formatter = new DateTimeFormatterBuilder()
            .parseCaseInsensitive()
            .appendPattern("MMM d yyyy")
            .toFormatter(Locale.ENGLISH);
    LocalDate outputDate = LocalDate.parse(date, formatter);
    return (outputDate.getDayOfYear() % 2 != 0);
}

正如parseCaseSensitive()方法的文档所说:

由于默认值区分大小写,因此只应在上次调用#ParseCaseInsensitive之后使用此方法。

 类似资料:
  • 问题内容: 我正在尝试提出一个要求区分大小写的结果的请求。 例如在我的数据库中 该请求是 但我有3行作为结果,我只想要abcdef 我试图找到一个解决方案 但是我有这个错误: 未知归类:’Latin1_General_CS_AS’{“成功”:false,“错误”:“#1273-未知归类:’Latin1_General_CS_AS’”} 谢谢 问题答案: 感谢您的帮助,我找到了不是latin1 ut

  • 对于报告(0.1%的所有查询),我需要返回一个所有可能类别的列表,区分大小写! 考虑以下文件: 运行以下查询: 返回: 是否有方法返回区分大小写的类别(存储在文档中)?我对此查询结果中的感兴趣。 Elasticsearch论坛中的问题 谢谢,伊泰

  • 问题内容: indexOf(String)方法区分大小写吗?如果是这样,是否有不区分大小写的版本? 问题答案: 这些方法均区分大小写。通过预先将字符串转换为大写/小写,可以使它们(大致来说,以一种折断的方式,但是可以处理很多情况)不区分大小写:

  • 问题内容: 如何根据情况使LINQ区分大小写和不区分大小写? 我正在使用sql server 2008和Entity Framework 4.0。 我更改了COLLATION以使SQL Server区分大小写。因此对于以下情况: 它很棒。但是,当按主题(或名称或类似名称)搜索时,我需要能够 忽略大小写而 从数据库中提取数据,如下所示: 当记录是“ TestString”并且我正在寻找“ test”

  • 问题内容: 我有一个Lucene索引,该索引当前区分大小写。我想添加的 选项 有不区分大小写作为后备的。这意味着与案例匹配的结果将获得更大的权重,并且将首先出现。例如,如果结果数限制为10,并且有10个匹配项符合我的情况,那就足够了。如果仅找到7个结果,则可以从不区分大小写的搜索中再添加3个结果。 我的案子实际上更复杂,因为我有不同重量的物品。理想情况下,匹配“错误”的表壳会增加一些重量。不用说,