`
longxia1987
  • 浏览: 35143 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java toLowerCase()/toUpperCase()方法的使用注意

 
阅读更多

文章出处:http://topic.csdn.net/u/20110828/09/f26c887b-7b41-49f0-a882-71d44750aa00.html?seed=1548072073&r=75221759#r_75221759

在此感谢“天涯浪子”的分享

说明:如果大家写的代码涉汲到国际化的话,就看下去。如果想了解也可以看下去。

大家看下如下代码,我们在运行时,会是一个什么样的结果:

肯定有人说,这个肯定是true…没错,一般人想到这个肯定是true,但是…我们看看toUpperCase()(或toLowerCase(),下文件只说其中一个方法了)方法的源代码:

注意,这里调用了一个带Locale的重载方法,于是我们再看以下代码:

这个时候,运行的结果相信大家都能看得出来,是一个false,tr是土耳其的语言代码(至少在没有土语的机器上会不一样,还有其它地区的语言在返回时不是直接转成大写的,还加了一些特殊的符号),如果不幸,你写的程序正在这些地区运行,那就会得到一个错误的结果,甚至于你连错误的地方都找不到,很容易忽略它。因此我们在使用toLowerCase()方法时,尽量使用toLowerCase(Locale.US)这个方法来代替(或使用equalsIgnoreCase()方法来比较),这样就不会因为在不同语言的机器上出现一些让人莫名其妙的问题了。

如果大家使用过findbugs的话,会发现凡是使用toLowerCase()的地方,findbugs都会有警告提示的,我开始在修改findbugs时(XX公司要求外包项目静态检查结果一定要清零),不明所以,直接就将toLowerCase(Locale.getDefault())搬出来了,今天看到这样的说明惊得一身冷汗,幸好….幸好….

分享到:
评论

相关推荐

    java string类常用方法

    在日常开发中,我们经常会使用这些方法来完成字符串的处理和操作。下面我们将详细介绍Java String类中的常用方法。 charAt方法 charAt方法是String类中的一个基本方法,该方法返回指定位置的代码单元。这个方法的...

    java 字母大小写转换

    Java 的 `Character` 类提供了两个静态方法 `toLowerCase(char ch)` 和 `toUpperCase(char ch)`,用于单独转换一个字符的大小写: ```java char upperCaseChar = 'A'; char lowerCaseChar = Character....

    java中常用字符串方法总结

    `toUpperCase()`和`toLowerCase()`用于将字符串转换为全大写或全小写。 10. **分割字符串** `split(String regex)`根据正则表达式将字符串分割成数组。 11. **去除空白字符** `trim()`去除字符串两端的空白字符...

    java 大小写互换

    对于单个字符的大小写转换,可以使用`Character`类的`toLowerCase(char)`和`toUpperCase(char)`方法。例如: ```java char ch = 'A'; char lowerCh = Character.toLowerCase(ch); char upperCh = Character....

    JAVA内置对象大全,各类使用方法大全

    【JAVA内置对象大全,各类使用方法大全】 在Java编程语言中,内置对象是指由Java标准库提供的、无需程序员显式创建的对象。这些对象通常与语言的底层机制紧密关联,提供了许多核心功能。本文将主要讨论JavaScript中...

    java常用类使用方法

    4. **Character类**:Character类处理字符,提供了检查字符类型的工具,如isDigit()、isLetter()等,以及转换方法,如`toUpperCase()`和`toLowerCase()`。 5. **String类**:String是不可变的字符序列,广泛用于...

    Java学习~实现字母的大小写转换

    对于大小写转换,我们可以使用`Character.toUpperCase()`和`Character.toLowerCase()`方法。这两个方法分别用于将字符转换为大写和小写。例如: ```java char lowerCaseChar = 'a'; char upperCaseChar = Character...

    Java实验4 Java 常用API的应用.doc

    例如,在StringOperation.java中,我们可以使用for循环遍历字符串“HelloWorld”,并使用toLowerCase()或toUpperCase()方法将每个字符转换为小写或大写形式,然后使用StringBuffer对象将转换后的字符添加到一个字符...

    java学习源码,很好的资料,很全的资料

    1. **转换大小写(toLowerCase/toUpperCase)**:这两个方法分别用于将字符串转换为全部小写或大写形式。 ```java System.out.println("s1.toLowerCase() is " + s1.toLowerCase()); System.out.println("s1....

    java大小写转换.doc

    如果只想转换字符串的一部分,可以先使用`substring()`方法获取需要转换的子字符串,然后再调用`toUpperCase()`或`toLowerCase()`。例如,如果有一个字符串`str = "Hello World"`,我们只想转换"World"这部分为大写...

    JAVA常用方法.rar

    - `toUpperCase()` 和 `toLowerCase()`: 将字符串转换为大写或小写。 2. **数组操作方法** - `length`: 数组的长度属性,表示数组包含的元素个数。 - `clone()`: 创建数组的一个副本,避免直接修改原数组的影响...

    **Java字符串的方法

    ### Java字符串的方法详解 在Java编程语言中,字符串(`String`)是一个极其重要的类,它代表了一系列的字符。在日常开发中,我们经常会遇到对字符串进行操作的需求,例如获取字符串长度、查找某个字符的位置等。...

    java String类常用方法练习小结

    - **`toUpperCase()`** 和 **`toLowerCase()`**:将字符串转换为全大写或全小写。 - **`trim()`**:移除字符串两端的空白字符。 - **`indexOf(String str)`** 和 **`lastIndexOf(String str)`**:分别返回指定子字符...

    Java 字符串常用方法

    - `toLowerCase()` 和 `toUpperCase()`: 将字符串转换为小写或大写。 - `trim()`: 去掉字符串首尾的空白字符。 - `getBytes()`: 将字符串转换为字节数组,使用平台默认的字符集。 - `charAt(int index)` 和 `...

    java常用类的使用方法

    【Integer 类】 在Java中,Integer 是基本数据类型 int 的包装类,它提供了一些方便的方法来处理整数。Integer 类包含以下主要知识...这些类的使用方法在日常编程中非常常见,熟练掌握它们可以提升代码的效率和可读性。

    Java 实例 - 字符串小写转大写源代码-详细教程.zip

    其中,`toUpperCase()` 和 `toLowerCase()` 方法分别用于将字符串转换为大写和小写。这两个方法都返回一个新的字符串,原始字符串不会被改变,因为Java中的字符串是不可变的。 例如,假设我们有一个字符串变量 `str...

    java中的String类常用方法解析(一)

    以上就是`String`类的一些常见方法,理解并熟练使用它们对于提升Java编程效率至关重要。在实际开发中,开发者通常会结合这些方法来处理字符串,实现各种文本操作。通过阅读和分析`TestString.java`文件,我们可以...

    Java字符串常用方法

    - **将字符串转换为大写**:使用`toUpperCase()`方法。 - **将字符串转换为小写**:使用`toLowerCase()`方法。 - **判断字符串是否为数字**:可以使用正则表达式来实现。 - **判断字符串是否包含子串**:使用`...

    java中常用的字符串的截取方法

    toLowerCase() 方法用于将字符串转换为小写,toUpperCase() 方法用于将字符串转换为大写。例如: String s="Hello World"; String lower=s.toLowerCase(); // "hello world" String upper=s.toUpperCase(); // ...

Global site tag (gtag.js) - Google Analytics