[英]Building a word letter by letter
一直在思考這個問題,我似乎找不到解決方案。 該代碼允許逐個字母打印單詞的字符。 很好,但是如果我要逐個字母地構建單詞。 這怎么可能?
例如,單詞為dogs
,輸出為:
d
do
dog
dogs
資源:
public static void main(String[] args)
{
String word;
Scanner kb = new Scanner(System.in);
System.out.print("insert your word");
word = kb.nextLine();
for (int k = 0; k< word.length(); k++)
{
System.out.println(word.charAt(k));
}
kb.close();
}
再次為愚蠢的問題感到抱歉,但我真的看不到解決方案。
例如,此代碼可以為您提供幫助。
for (int i = 1; i <= word.length(); i++) {
System.out.println(word.substring(0, i));
}
但實際上,將來嘗試再思考一分鍾再問一個問題...
您需要保存已經打印的舊字符。 嘗試這樣修改您的for循環:
String toPrint = "";
for (int k = 0; k < word.length(); k++){
toPrint += word.charAt(k);
System.out.println(toPrint);
}
您可以使用to charArray
方法將單詞轉換為char數組,然后輸出字符:
char [] word = "Dogs".toLowerCase().toCharArray();
int index = 1;
while(index <= word.length){
for (int k = 0; k<index; k++){
System.out.print(word[k]);
}
System.out.println();
index++;
}
輸出:
d
do
dog
dogs
您可以簡單地進行雙循環。
for (int k = 0; k < word.length(); k++)
{
for (int x = 0; x =< k; x++)
{
System.out.println(word.charAt(x));
}
System.out.println(""); //spacing
k++;
}
public static void main(String[] args)
{
String word;
Scanner kb = new Scanner(System.in);
System.out.print("insert your word");
word = kb.nextLine();
for (int k = 0; k< word.length(); k++)
{
System.out.println(word.substring(0, k+1));
}
kb.close();
}
希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.