我一直在努力編寫一個程序。基本上,我們必須編寫一個程序,將英語句子翻譯成豬拉丁語中的一個。我們需要的第一個方法是標記字符串,我們不允許使用Java中通常使用的Split方法。我一直沒有運氣做到這一點,在過去2天后,這裏是我到目前爲止有:Tokenize方法:將字符串拆分成數組
public class PigLatin
{
public static void main(String[] args)
{
String s = "Hello there my name is John";
Tokenize(s);
}
public static String[] Tokenize(String english)
{
String[] tokenized = new String[english.length()];
for (int i = 0; i < english.length(); i++)
{
int j= 0;
while (english.charAt(i) != ' ')
{
String m = "";
m = m + english.charAt(i);
if (english.charAt(i) == ' ')
{
j++;
}
else
{
break;
}
}
for (int l = 0; l < tokenized.length; l++) {
System.out.print(tokenized[l] + ", ");
}
}
return tokenized;
}
}
這一切確實是打印一個極其漫長的「空」 S陣列。如果任何人都可以提供任何意見,我會reallllyyyy欣賞它!
預先感謝您 更新:我們應該假設不會有標點符號或多餘的空格,所以基本上只要有空間,這是一個新詞
如果您允許使用StringTokenizer,它將執行與split相同的操作,但是您可以遍歷它創建的令牌。 – 2015-02-23 03:04:20
您是否有可能誤解作業?這聽起來像你應該創建一個'StringTokenizer'對象。 – Dando18 2015-02-23 03:06:34
m看起來像是在錯誤的級別聲明的,它應該在while循環之外。一旦它被填充,你也不會對它做任何事情。 – 2015-02-23 03:07:31