我有这个for循环,它计算字符串的长度,并为字符串中的每个字母填充一个带有*的char []。
当我在没有关闭场景的情况下加载另一个级别时,阵列需要为空,这怎么能实现。
word是文本文件中随机生成的单词。
填充char []的for循环如下:
public static char[] emptyCharecters;
public static char[] dash(String word) {
char[] x = new char[word.length()];
int j = word.length();
for (int i=0; i<j; i++) {
x[i] = '*';
}
return x;
}
emptyCharecters.dash(word);
这很好地填补了*****,就像我提到的那么多字母。
当我更改关卡时,如何清除char []短划线
由于
答案 0 :(得分:0)
这将清除您的char[]
,还有许多其他方法,例如使用for loop
。
emptycharaters = null; // char[] now to points to some null reference
或者如果你想填充没有任何字符,那么
Arrays.fill(emptyCharacters, "");
答案 1 :(得分:0)
我不太清楚你的意思&#34;清楚&#34;但你可以做到
static ArrayList<String> dashedWords = new ArrayList<>();
创建一个ArrayList来保留你的虚线词,这不应该在方法中。
public static char[] undashAll(){
for(String word : dashedWords){
char[] nowChar = word.toCharArray();
StringBuilder sb = new StringBuilder();
sb.append(nowChar);
sb.delete(0, nowChar.length);
char[] last = sb.toString().toCharArray();
System.out.println(last);
System.out.println("done");
return last;
}
return "error".toCharArray();
}
使用此方法删除该单词的数组
dashedWords.add(word);
并使用它来添加单词