2017-05-17 57 views
1

我已經閱讀了一些棘手的面試問題,我看過這個我不明白這背後的邏輯是什麼。有人可以解釋一下嗎?這是如何工作的邏輯是什麼?

public class Test 
{ 
    public static void main(String[] args) { 
for(char c‮h = 0; c‮h < Character.MAX_VALUE; c‮h++) 
    if (Character.isJavaIdentifierPart(c‮h) && !Character.isJavaIdentifierStart(c‮h)) 
      System.out.printf("%04x <%s>%n", (int) c‮h, "" + c‮h); 
    } 
} 

輸出

0000 < > 
0001 <> 
0002 <> 
0003 <> 
0004 <> 
0005 <> 
0006 <> 
0007 <> 
0008 <> 
000e <> 
000f <> 
0010 <> 
0011 <> 
0012 <> 
0013 <> 
0014 <> 
0015 <> 
0016 <> 
0017 <> 
....more rows 
+1

我會首先發佈一個可編譯的例子;這甚至不是代碼。看起來應該是一個字符串中的東西,但即使如此,仍然缺少某些東西。 –

+0

感謝您的回覆。這是它的程序。 – anonymous

+0

我建議你檢查正在使用的方法的java文檔,然後它應該是有道理的。 –

回答

0

此:

for(char c‮h = 0; c‮h < Character.MAX_VALUE; c‮h++) 

相同

for(char ch=0; ch< Character.MAX_VALUE; ch++) 

但向後寫入....所以是正常的for循環