0

在这个问题中,我要编写一个接受ArrayListofstrings和 an的方法integer。在这种情况下,整数将重复单个单词的次数,如整数所示。例如,如果列表存储了["how", "are", "you?"]方法调用之前的值并且 k 为 4,则它应该存储这些值["how", "how", "how", "how", "are", "are", "are", "are", "you?", "you?", "you?", "you?"]如果 k 为 0 或负数,则调用后列表应该为空。

public static void stutter(ArrayList<String> thing, int k) {
    if (k <= 0) {
        thing.clear(); // if k is 0
        return;
    }

    for (int i = 0; i< thing.size(); i+= k) {
        String temp = thing.get(i);
        for (int j = 0; j < k; j++) {
            thing.add(temp);
        }
    }
}
4

3 回答 3

0

没关系,我解决了;只是一些重新安排,它的工作。

于 2013-10-05T04:45:05.923 回答
0

我没有测试过,请验证

 public static void stutter(ArrayList<String> thing, int k) {
    if (k <= 0) {
        thing.clear(); // if k is 0
        return;
    }

    ArrayList<String> newList = new ArrayList<>();
    for (int i = 0; i< thing.size(); i++) {
        String temp = thing.get(i);
        for (int j = 0; j < k; j++) {
            newList.add(temp);
        }
    }
    thing.clear();
    thing.addAll(newList);
}
于 2013-10-05T04:45:28.323 回答
0

没关系,我解决了;只是一些重新安排,它的工作。

public static void stutter(ArrayList<String> thing, int k) {
    if (k <= 0) {
        thing.clear();
        return;
    }
    for (int i = 0; i< thing.size(); i+= k) {
        String temp = thing.get(i);
        for (int j = 1; j < k; j++) {
            thing.add(i, thing.get(i));
        }

        if (i == thing.size()) {
            return;
        }
    }
}

如果你们能从中找到任何漏洞,请随时指出。

于 2013-10-05T04:50:27.953 回答