今天随便看了一下JDK源码 ,很偶然的漂到了,String 的 toLowerCase
看到一段 代码:
scan: {
for (firstUpper = 0 ; firstUpper < count; ) {
char c = value[offset+firstUpper];
if ((c >= Character.MIN_HIGH_SURROGATE) &&
(c <= Character.MAX_HIGH_SURROGATE)) {
int supplChar = codePointAt(firstUpper);
if (supplChar != Character.toLowerCase(supplChar)) {
break scan;
}
firstUpper += Character.charCount(supplChar);
} else {
if (c != Character.toLowerCase(c)) {
break scan;
}
firstUpper++;
}
}
return this;
}
真是奇怪,想了想不知道该怎么理解这段代码,难道 他就是 传说中的goto ?
百度了一下果然如此,但是goto不是很早就被摒弃了么?(由于可读性 之类的问题)
那么为何java大师们还在 源码中 这样定义呢? 有木有一个合理的解释啊?
分享到:
相关推荐
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
JAVA学习 基本的JAVA理解学习笔记 细绳 String st = " " ;...st.toLowerCase() :将所有字符串字母替换为小写 字符串缓冲区 toString() :更改为字符串类型 字符串(不可变) StringBuffer(可变):比字符串重 s
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
Java中的Character类是一个包装类,用于封装一个基本数据类型char的值。它提供了一些静态方法来操作字符,例如转换大小写、判断字符类型等。 二、Character类有哪些常用的静态方法? 1. isLetter(char c):检查字符...
本文实例讲述了js的toLowerCase方法用法。分享给大家供大家参考。...在本例中,”Hello world! Jb51.Net” 将以小写字母来显示: 代码如下:[removed] var str=”Hello World! Jb51.Net” [removed](str.toLow
此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...
String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写 String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写 String trim():返回字符串的副本,忽略前导空白和尾部...
java字符串操作大全,适合初学者,浅显易懂 部JAVA字符串操作 2008-07-11 15:39:42| 分类: JAVA | 标签: |字号大中小 订阅 . JAVA字符串的方法 String a = "53c015"; //Integer.parseInt(s, radix) radix设置为...
其中,toLowerCase()和toUpperCase()是两个经典的方法,借鉴自java.lang.String中的同名方法。而toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现。 对有些地区来说,针对地区的方法与其通用...
微信公众平台JAVA版 【绝对可用】 部分代码: String signature=request.getParameter("signature"); String timestamp=request.getParameter("timestamp"); String nonce=request.getParameter("nonce...
table table toLowerCase ; String strKey table; if sequences containsKey strKey { SequenceManager tmp SequenceManager sequences get strKey ; return tmp nextUniqueID ; } else { ...
1. 文档注释可以在:类,... String toLowerCase():将一个字符串中的英文部分转换为全大写或全小写(验证码使用) 8)valueOf():String 提供了一组静态方法 该方法有若干的重载,用来将其他类型数据转换为字符串。
5、Java中字符串的处理:String类和StringBuffer类,substring()、indexOf()、lastIndexOf()、replace()、replaceAll()、trim()、toLowerCase()、endsWith()、equals()、split()等方法的使用 6、Java类集:List,...
53 str = str.toLowerCase();//统一转为小写 54 String badStr = "'|and|exec|execute|insert|select|delete|update|count|drop|*|%|chr|mid|master|truncate|" + 55 "char|declare|sitename|net user|xp_cmd...
private long javacount; /** 可使用内存. */ private long totalMemory; /** 剩余内存. */ private long freeMemory; /** 最大可使用内存. */ private long maxMemory; /** 操作系统. */ private ...
this.setBeanShortName(Character.toLowerCase(this.getBeanName() .charAt(0)) + ""); init(); } public SqlUtils() { init(); } void init(){ propertyMap = new LinkedHashMap, Object>()...
本文主要来介绍一下Java中的不可变对象,以及Java中String类的不可变性,那么为什么Java的String类是不可变对象?让我们一起来分析一下。 答案一: 流行的Java面试题之一是:什么是不可变对象(immutable ...
string类是Java中的一种数据类型,用于表示文本字符串。它是不可变的,也就是说一旦创建了一个字符串对象,它的值就不能被修改。字符串类提供了许多方法来操作字符串,包括拼接、比较、截取和搜索等。 可以使用字符...
toLowerCase() C. toUpperCase() D. equalsIgnoreCase() E. none of the above 正确答案: D 931. At the end of these two lines of code: String s="hypertext"; String t=s.substring(2,5); What does the ...