/** * Compara dos reglas * * @param rule Regla regla con la que se compara * @return boolea Verdadero si es igual, Falso si es diferente */ public boolean equals(Regla rule) { boolean igual = true; // si tiene el mismo tamaño en los antecedentes if (this.antecedentes.size() == rule.getAntecedente().size()) { for (int i = 0; i < this.antecedentes.size(); i++) { if (!rule.getAntecedente().get(i).equals(antecedentes.get(i))) igual = false; } if (!igual) return false; } else { return false; } // ahora se compara que tienen el mismo consecuente if (this.consecuente.equals(rule.getConsecuente())) return true; else return false; }
/** * Contructor copia de Regla * * @param r Regla regla desde la que se copia */ public Regla(Regla r) { antecedentes = (LinkedList) r.getAntecedente().clone(); consecuente = r.getConsecuente(); consistencia = r.getConsistencia(); valoresinvalidos = (LinkedList) r.getValoresInvalidos().clone(); }