ant.java

来自「GUI Ant-Miner is a tool for extracting c」· Java 代码 · 共 86 行

JAVA
86
字号
import java.util.List;
import java.util.ListIterator;

/*
 * Created on 18/05/2005
 */

/**
 * @author Fernando Meyer
 */
public class Ant implements Cloneable{
	private MyList rulesList;
	private MyList instancesIndexList;
	private String ruleConsequent;
	private double ruleQuality;
	private int [] memory;
	private int memSize;
	
	public Ant(int memSize){
		this.memSize = memSize;
		rulesList = new MyList();
		instancesIndexList = new MyList();
		memory = new int[memSize];
		memory[memSize-1] = 1;
	}
	
	public MyList getRulesList(){
		return rulesList;
	}
	
	public String getRuleString(List attributesList){
		String rule;
		Object temp;
		ListIterator li = rulesList.listIterator();
		rule = "IF ";
		while(li.hasNext()){
			temp = li.next();
			rule += ((Attribute) attributesList.get(((int[]) temp)[0])).getAttributeName()+"='"+((Attribute) attributesList.get(((int[]) temp)[0])).getTypes().get(((int[]) temp)[1])+"' "; 
			if(li.hasNext()){
				rule += "AND ";
			}
		}
		rule += "THEN '"+ruleConsequent+"'";
		return rule; 
	}
	
	public MyList getInstancesIndexList(){
		return instancesIndexList;
	}
	
	public void setRuleConsequent(String s){
		ruleConsequent = s;
	}
	public String getRuleConsequent(){
		return ruleConsequent;
	}
	
	public void setRulesList(MyList list){
		rulesList = list;
	}
	public void setInstancesIndexList(MyList list){
		instancesIndexList = list;
	}
	
	public int [] getMemory(){
		return memory;
	}
	
	public void setRuleQuality(double d){
		ruleQuality = d;
	}
	public double getRuleQuality(){
		return ruleQuality;
	}
	
	public Object clone() throws CloneNotSupportedException{
		Ant antClone = new Ant(this.memSize);
		antClone.setRulesList((MyList) this.getRulesList().clone());
		antClone.setInstancesIndexList((MyList) this.getInstancesIndexList().clone());
		antClone.ruleConsequent = this.ruleConsequent;
		antClone.setRuleQuality(this.ruleQuality);
		return antClone;
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?