該程序將字符串轉換爲「rövarspråket」並將其從「rövarspråket」中轉換出來 - 所有輔音都被複制,並在它們之間插入「o」。元音,數字和其他字符保持原樣。 「羅瓦爾」因此變成了「羅羅沃瓦爾」。如何從最終課程調用主類的靜態方法?
public final class rovar
{
public static String lower_consonants = "bcdfhjklmnpqrstvwxz";
public static String upper_consonants = "BCFGHJKLMNPQRSTVWXZ";
public static String enrov(String normal)
{
if (normal == null)
return null;
StringBuilder builder = new StringBuilder();
for(char c : normal.toCharArray())
if (lower_consonants.contains(String.valueOf(c)))
builder.append(c + "o" + c);
else if (upper_consonants.contains(String.valueOf(c)))
builder.append(c + "O" + c) ;
else
builder.append(c);
return builder.toString();
}
public static String derov(String rov)
{
if (rov == null)
return null;
for(char c : lower_consonants.toCharArray()) {
String find = (String.valueOf(c) + "o" + String.valueOf(c));
rov = rov.replace(find, String.valueOf(c));
}
for(char c : upper_consonants.toCharArray()){
String find = (String.valueOf(c) + "O" + String.valueOf(c));
rov = rov.replace(find, String.valueOf(c));
}
return rov;
}
}
現在,我想編譯這個程序。因此,我創建了一個主類,並嘗試創建該類的新實例,然後調用這兩個方法。
public class RovarMain {
public static void main(String[] args) {
// TODO Auto-generated method stub
rovar r = new rovar();
r.enrov();
r.derov();
}
}
問題是我不知道爲那些方法調用採取哪個參數。因爲代碼顯示錯誤的上述兩行:在類型rovar方法enrov(字符串)是不適用的參數()
題外話注:請學習Java命名約定 – rkosegi
你應該調用一個公共靜態方法只是與類名,鏈接是關於C#靜態方法,但我認爲Java是一樣。 https://stackoverflow.com/questions/35568120/having-trouble-calling-a-public-method-in-a-static-method/35568241#35568241 – Jaycee