ソースを参照

Extract adding/removing old/new values into methods.

Lucas Stadler 12 年 前
コミット
6116f97e2b
共有1 個のファイルを変更した7 個の追加0 個の削除を含む
  1. 7 0
      java/src/main/java/lp/java/understanding/SlidingWindow.java

+ 7 - 0
java/src/main/java/lp/java/understanding/SlidingWindow.java

61
61
62
    public void slide(long slideBy) {
62
    public void slide(long slideBy) {
63
        windowStart += slideBy;
63
        windowStart += slideBy;
64
        removeOldValues();
65
        addNewValues();
66
    }
67
68
    private void removeOldValues() {
64
        for (int i = 0; i < currentValues.size(); i++) {
69
        for (int i = 0; i < currentValues.size(); i++) {
65
            long timestamp = currentTimestamps.get(i);
70
            long timestamp = currentTimestamps.get(i);
66
            if (!isInWindow(timestamp)) {
71
            if (!isInWindow(timestamp)) {
69
                i -= 1;
74
                i -= 1;
70
            }
75
            }
71
        }
76
        }
77
    }
72
78
79
    private void addNewValues() {
73
        for (int i = 0; i < newValues.size(); i++) {
80
        for (int i = 0; i < newValues.size(); i++) {
74
            long timestamp = newTimestamps.get(i);
81
            long timestamp = newTimestamps.get(i);
75
            if (isInWindow(timestamp)) {
82
            if (isInWindow(timestamp)) {