加载新页面时清除char []

时间:2017-01-07 16:03:02

标签: java arrays javafx

我有这个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 []短划线

由于

2 个答案:

答案 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);并使用它来添加单词