`
whao189
  • 浏览: 123095 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

关于java中toLowerCase 中的 scan:{}

阅读更多
今天随便看了一下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大师们还在 源码中 这样定义呢? 有木有一个合理的解释啊?
分享到:
评论
2 楼 a191154823 2013-11-26  
scan 是个标签,用于便于结束循环嵌套
1 楼 a455642158 2012-08-06  
难道这里面有用goto这些字眼……各种java基础书不都是写了 用break 和 continue代替了goto 这个你都不知道?

相关推荐

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part4

    此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...

    java-study:基本的Java理解

    JAVA学习 基本的JAVA理解学习笔记 细绳 String st = " " ;...st.toLowerCase() :将所有字符串字母替换为小写 字符串缓冲区 toString() :更改为字符串类型 字符串(不可变) StringBuffer(可变):比字符串重 s

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part3

    此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part2

    此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...

    Java Character 类.pdf

    Java中的Character类是一个包装类,用于封装一个基本数据类型char的值。它提供了一些静态方法来操作字符,例如转换大小写、判断字符类型等。 二、Character类有哪些常用的静态方法? 1. isLetter(char c):检查字符...

    js的toLowerCase方法用法实例

    本文实例讲述了js的toLowerCase方法用法。分享给大家供大家参考。...在本例中,”Hello world! Jb51.Net” 将以小写字母来显示: 代码如下:[removed] var str=”Hello World! Jb51.Net” [removed](str.toLow

    JAVA WEB 开发详解:XML+XSLT+SERVLET+JSP 深入剖析与实例应用.part5

    此外,本书的配套光盘还免费提供了价值人民币330元的java教学视频,对java语言进行了全面讲解,帮助一些不会java语言的读者快速地从java基础知识的学习中过渡到java web的学习与开发上. 第1部分 xml篇. 第1章 xml...

    StringAPI.java

    String toLowerCase():使用默认语言环境,将 String 中的所有字符转换为小写 String toUpperCase():使用默认语言环境,将 String 中的所有字符转换为大写 String trim():返回字符串的副本,忽略前导空白和尾部...

    java字符串操作大全

    java字符串操作大全,适合初学者,浅显易懂 部JAVA字符串操作 2008-07-11 15:39:42| 分类: JAVA | 标签: |字号大中小 订阅 . JAVA字符串的方法 String a = "53c015"; //Integer.parseInt(s, radix) radix设置为...

    浅谈toLowerCase和toLocaleLowerCase的区别

    其中,toLowerCase()和toUpperCase()是两个经典的方法,借鉴自java.lang.String中的同名方法。而toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现。 对有些地区来说,针对地区的方法与其通用...

    微信公众平台JAVA版【绝对可用】

    微信公众平台JAVA版 【绝对可用】 部分代码: String signature=request.getParameter("signature"); String timestamp=request.getParameter("timestamp"); String nonce=request.getParameter("nonce...

    java自动生成Oracle sequence管理类

    table table toLowerCase ; String strKey table; if sequences containsKey strKey { SequenceManager tmp SequenceManager sequences get strKey ; return tmp nextUniqueID ; } else { ...

    2Java SE(上).doc

    1. 文档注释可以在:类,... String toLowerCase():将一个字符串中的英文部分转换为全大写或全小写(验证码使用) 8)valueOf():String 提供了一组静态方法 该方法有若干的重载,用来将其他类型数据转换为字符串。

    Jsoup学习——Saz2Csv解析器

    5、Java中字符串的处理:String类和StringBuffer类,substring()、indexOf()、lastIndexOf()、replace()、replaceAll()、trim()、toLowerCase()、endsWith()、equals()、split()等方法的使用 6、Java类集:List,...

    java sql注入l

    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...

    java在cpu的占有率

    private long javacount; /** 可使用内存. */ private long totalMemory; /** 剩余内存. */ private long freeMemory; /** 最大可使用内存. */ private long maxMemory; /** 操作系统. */ private ...

    sql访问数据库工具类--SqlUtils(java源码)

    this.setBeanShortName(Character.toLowerCase(this.getBeanName() .charAt(0)) + ""); init(); } public SqlUtils() { init(); } void init(){ propertyMap = new LinkedHashMap, Object&gt;()...

    为什么Java字符串是不可变对象?

    本文主要来介绍一下Java中的不可变对象,以及Java中String类的不可变性,那么为什么Java的String类是不可变对象?让我们一起来分析一下。  答案一:  流行的Java面试题之一是:什么是不可变对象(immutable ...

    string类的常用方法.pdf

    string类是Java中的一种数据类型,用于表示文本字符串。它是不可变的,也就是说一旦创建了一个字符串对象,它的值就不能被修改。字符串类提供了许多方法来操作字符串,包括拼接、比较、截取和搜索等。 可以使用字符...

    java--scjp考题复习

    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 ...

Global site tag (gtag.js) - Google Analytics