Эффективный способ присоединиться к ArrayList - PullRequest
0 голосов
/ 21 февраля 2012

Я ищу эффективный способ создания списка / карты и т. Д. Из двух приведенных ниже списков, которые я могу использовать для получения как текущего, так и прошлого статуса правила.

            List<Boolean> rulesCurrentStatus = new ArrayList<Boolean>(); // 3 Rules: false/true meaning if the rule passed of failed
             rulesCurrentStatus.add(false);
             rulesCurrentStatus.add(true);
             rulesCurrentStatus.add(false);

            List<Boolean> rulesPreviousStatus = new ArrayList<Boolean>();  // Previous state of the above 3 rules.

            rulesPreviousStatus.add(true);
            rulesPreviousStatus.add(true);
            rulesPreviousStatus.add(false);

Ответы [ 2 ]

1 голос
/ 21 февраля 2012

если я вас правильно понял, вы хотите получить историю статуса правила. тогда, возможно, это могло бы помочь:

Map<Rule( or ruleName as String), List<Boolean>>

ключом на этой карте является объект правила или, например, Строка указывает, какое правило. значение представляет собой список (например, ArrayList), хранящий историю состояний. например:

{"rule1":[True, False,True]   //1st,2nd,3rd(current) status
"rule2":[True,False]
...
}

таким образом, если вы хотите получить всю историю статуса правила по

List<Boolean> history =   map.get("someRule")

тогда вы можете добавить новый статус или получить определенный статус, играя со списком.

если вам нужны только предварительные и текущие значения, вы можете объявить список с начальной емкостью.

1 голос
/ 21 февраля 2012

Вы можете использовать Map с ключом типа String и значением типа Boolean. Вы можете различить текущее и предыдущее значение, используя клавишу. например Сохраните все текущие значения с ключом что-то похожее C # 1, C # 2 и сохраните предыдущие значения с ключом что-то похожее P # 1, P # 2 и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...