Java 屏蔽字符串时保留空白
我希望在屏蔽字符串时保留字符串中的空白。下面是我为屏蔽字符串而编写的代码,但它没有考虑到我的Arraylist中的一些字符串有空格Java 屏蔽字符串时保留空白,java,string,arraylist,masking,Java,String,Arraylist,Masking,我希望在屏蔽字符串时保留字符串中的空白。下面是我为屏蔽字符串而编写的代码,但它没有考虑到我的Arraylist中的一些字符串有空格 for (int i=0;i<secretWord.length();i++){ System.out.print("*"); } for(int i=0;i您可以简单地检查字符是否为空格 for (int i=0;i<secretWord.length();i++){ if(secretWord.charAt(i)!=' ')
for (int i=0;i<secretWord.length();i++){
System.out.print("*");
}
for(int i=0;i您可以简单地检查字符是否为空格
for (int i=0;i<secretWord.length();i++){
if(secretWord.charAt(i)!=' ')
{
System.out.print("*");
}
else
{
System.out.print(" ");
}
}
for(int i=0;i您可以简单地检查字符是否为空格
for (int i=0;i<secretWord.length();i++){
if(secretWord.charAt(i)!=' ')
{
System.out.print("*");
}
else
{
System.out.print(" ");
}
}
for(int i=0;i
(在正则表达式中,\S
表示不是空白字符的单个字符。)
(在正则表达式中,\S
表示非空白字符的单个字符。)我认为您正在寻找一个*字符和一个空格来屏蔽字符串
for (int i=0 ; i<secretWord.length() ; i++){
if(Character.isWhitespace(charAt(i))){
System.out.print(charAt(i));
}else{
System.out.print("*");
}
}
for(int i=0;i我想您正在寻找一个*作为字符,一个空格作为空格来屏蔽字符串。
如下所示:
for (int i=0 ; i<secretWord.length() ; i++){
if(Character.isWhitespace(charAt(i))){
System.out.print(charAt(i));
}else{
System.out.print("*");
}
}
for(int i=0;i您可以使用charAt()
检查当前字符是否为空白。您可以使用charAt()
检查当前字符是否为空白。我倾向于利用每一个机会提升{}在单行如果块。这种方式更容易阅读和出错。我倾向于利用一切机会在单行如果块上推广{}
。这种方式更容易阅读和出错。secretWord.charAt(I)==“应该是secretWord.charAt(I)=''
@MikeB谢谢迈克。我忘了这是一个字符。:)制表符和其他空白字符呢?请参阅@ajb解决方案-它更复杂。@VasilLukach你是对的。但OP只需要保留空格,这就是原因。你怎么知道?问题是空格(不是空格)。secretWord.charAt(I)=“
应该是secretWord.charAt(i)=''
@MikeB谢谢迈克。我忘了这是一个字符。:)制表符和其他空白字符呢?请看@ajb solution-它更复杂。@VasilLukach你说得对。但OP只需要保留空格,这就是原因。你怎么知道?问题是空格(不是空格)。