在java 7中切换忽略大小写 [英] Switch ignore case in java 7

查看:355
本文介绍了在java 7中切换忽略大小写的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在对Java 7新功能进行POC。我有代码在switch语句中使用String,它的工作原理。我想让它在不区分大小写的情况下工作。有没有办法在String上检查ignoreCase?

I am doing a POC on Java 7 new features. I have code to use String in switch statement and it works. I want to make it work in case insensitive also. Is there a way to check out with ignoreCase on String?

package com.java.j7;

public class Test {
    final private String _NEW ="NEW";
    final private String _PENDING = "PENDING";
    final private String _CLOSED = "CLOSED";
    final private String _REJECTED ="REJECTED";

public static void main(String... strings){

    Test j = new Test();
    j.processItem("new");
    j.processItem("pending");
    j.processItem("closed");
    j.processItem("rejected");

}

void processItem(String s){
    switch (s) {
    case _NEW:
        System.out.println("Matched to new");
        break;
    case _PENDING:
        System.out.println("Matched to pending");
        break;
    case _CLOSED:
        System.out.println("Matched to closed");
        break;
    case _REJECTED:
        System.out.println("Matched to rejected");
        break;

    default:
        System.out.println("Not matching any more");
        break;
    }

}
}


推荐答案

不,但你可以打开 s.toUpperCase()。所以:

no, but you could switch on s.toUpperCase(). so:

switch (s.toUpperCase()) {
   //same as before
}

虽然我们在挑剔,但你更喜欢英语语言环境中的大写字母避免土耳其问题

and while we're nitpicking, you better upper-case things in the english locale to avoid issues with turkish

这篇关于在java 7中切换忽略大小写的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆