2015-06-03 83 views
2

我一直在尋找的String類爲8u40-b25 JDK的源代碼,它包含一個scan: {}塊:什麼是掃描:Java中的塊?

2557  /* Now check if there are any characters that need to be changed. */ 
2558  scan: { 
2559   for (firstUpper = 0 ; firstUpper < len;) { 
2560    char c = value[firstUpper]; 
2561    if ((c >= Character.MIN_HIGH_SURROGATE) 
2562      && (c <= Character.MAX_HIGH_SURROGATE)) { 
2563     int supplChar = codePointAt(firstUpper); 
2564     if (supplChar != Character.toLowerCase(supplChar)) { 
2565      break scan; 
2566     } 
2567     firstUpper += Character.charCount(supplChar); 
2568    } else { 
2569     if (c != Character.toLowerCase(c)) { 
2570      break scan; 
2571     } 
2572     firstUpper++; 
2573    } 
2574   } 
2575   return this; 
2576  } 

這是什麼意思?

+0

喬恩釘了它。但一讀時,我認爲這也是一個關鍵詞。 – jww

回答

5

scan只是一個標籤。它允許這個以後:

break scan; 

...,允許將break語句打出來的外循環,而不是在內部循環。

有關標記語句的更多詳細信息,請參見section 14.7 of the JLS