我想在字符串被屏蔽時保留空格。下面是我爲掩蔽字符串而編寫的代碼,但沒有考慮到我的Arraylist中的一些字符串有空白區域。屏蔽字符串時保留空格
for (int i=0;i<secretWord.length();i++){
System.out.print("*");
}
我想在字符串被屏蔽時保留空格。下面是我爲掩蔽字符串而編寫的代碼,但沒有考慮到我的Arraylist中的一些字符串有空白區域。屏蔽字符串時保留空格
for (int i=0;i<secretWord.length();i++){
System.out.print("*");
}
System.out.print(secretWord.replaceAll("\\S","*"));
(在正則表達式,\S
意味着單個字符不是一個空白字符。)
你可以簡單地檢查一個字符是否爲空格!
for (int i=0;i<secretWord.length();i++){
if(secretWord.charAt(i)!=' ')
{
System.out.print("*");
}
else
{
System.out.print(" ");
}
}
我傾向於利用一切機會在單行if塊上推廣'{}'。這種方式更容易閱讀和容易出錯。 –
@ user3430741歡迎您! :-) – Devavrata
我認爲你正在尋找的,以空間的性格和空間*掩蓋字符串。
這樣做:
for (int i=0 ; i<secretWord.length() ; i++){
if(Character.isWhitespace(charAt(i))){
System.out.print(charAt(i));
}else{
System.out.print("*");
}
}
'secretWord.charAt(i)==「」'應該是'secretWord.charAt(i)==''' –
@MikeB謝謝Mike。我忘了這是一個角色。 :) –
標籤和其他空白字符呢?請參閱@ajb解決方案 - 它更復雜。 –
您可以使用'charAt()'並檢查當前字符是否爲空格。 –