[英]BlueJ - My program compiles with no errors but doesn't run
您好,我遇到了一個程序,該程序應該接收一個字符串,然后使用Character Wrapper類將每個單詞的首字母大寫。
import java.util.*;
public class wrapper
{
public static void main(String[] args)
{
Scanner input= new Scanner(System.in);
String s1;
s1=input.nextLine();
s1= s1.trim();
int howLong= s1.length();
int i;
int counter=0;
char cho;
for(counter=1; counter<= howLong+1; counter++)
{
cho=s1.charAt(counter);
if(Character.isLetter (cho) && ! Character.isLetter(s1.charAt(counter-1)))
{
System.out.print( Character.toUpperCase(cho) );
}
else
{
System.out.print(cho);
}
System.out.println();
}
}
}
到目前為止,這是程序,但是根據BlueJ編譯時沒有錯誤,但它沒有運行。 關於為什么會發生這種情況的任何幫助都將是巨大的。
編輯:將該程序更改為我認為將使它不僅打印出char變量已初始化為的空格,而且仍然無法運行。 循環可能有問題嗎?
您的程序編譯但無法運行的原因是因為行s1=input.nextLine();
。 在這一行,程序正在等待來自用戶的輸入以用作字符串s1
,但並未顯示終端,以便用戶提供此類輸入。 解決此問題的一種方法是強制終端在該行之前顯示自己。 我建議您將類似
System.out.println("Enter input:");
在此行之前,以便終端將顯示自己並且用戶可以在其中輸入輸入。 從那里,您可以像往常一樣處理該程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.