2012-03-11 102 views
0

java新手。嘗試熟悉語法和總體語言結構。CharacterSet to String和Int to Char鑄造

我試圖模仿Java的這個PHP函數,它只是一個數字的所有實例轉換爲特定的字符

 for($x=10;$x<=20;$x++){ 
      $string = str_replace($x, chr($x+55), $string); 
     } 

所以在PHP中,如果一個字符串是1090412它會被轉換爲類似A904C。

我想通過使用string.replace在java中這樣做,但我不能爲我的生活弄清楚如何正確地投下變量。我知道我可以通過將其轉換爲(char)來將整數轉換爲一個字符,但不知道從那裏去哪裏。這給我一個期待字符集的編譯錯誤。

string=1090412; 
    for (x = 10; x <= 35; x++) { 
     string.replace(x, (char) (x + 55)); 
    } 

回答

0

嘛,雖然沒有做到這一點的最好辦法,這裏是工作

import java.lang.*; 

public class T { 
    public static void main(String[] args) { 
    String s = "1090412"; 
    for (int i = 10; i <= 20; i++) { 
     s = s.replace(Integer.toString(i), "" + (char)(i + 55)); 
    } 
    System.out.println(s); 
    } 
} 

java.lang.String對象上有一個替代方法的方法。它被重載以獲取兩個char參數或兩個CharSequence對象。 "" + (char)(i + 55)只是創建CharSequence的快捷方式。

+0

你爲什麼說這不是最好的方法呢? – cubesnyc 2012-03-11 01:39:48

+0

首先,s.replace將每次通過for循環從開始到開始搜索整個字符串。 – Casey 2012-03-11 02:57:37