import java.io.*; import java.lang.*; import java.util.*; //------------------------------klasa Regula-------------------------------------// class Regula{ Object precondition[]; Object precondition1[]; Object decision; Object asert; int CtrlN; int CtrlL; //konstruktory public Regula(int CtrlN,int CtrlL,Object precondition,Object precondition1,Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[1]; this.precondition[0]=precondition; } if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[1]; this.precondition1[0]=precondition1; } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition[],Object precondition1[],Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[precondition.length]; System.arraycopy(precondition,0,this.precondition,0,precondition.length); } if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[precondition1.length]; System.arraycopy(precondition1,0,this.precondition1,0,precondition1.length); } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition[],Object precondition1,Object asert,Object decision) { if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[precondition.length]; System.arraycopy(precondition,0,this.precondition,0,precondition.length); } this.precondition1=new Object[1]; this.precondition1[0]=precondition1; this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } public Regula(int CtrlN,int CtrlL,Object precondition,Object precondition1[],Object asert,Object decision) { if(precondition1==null) { this.precondition1=null; } else { this.precondition1=new Object[precondition1.length]; System.arraycopy(precondition1,0,this.precondition1,0,precondition1.length); } if(precondition==null) { this.precondition=null; } else { this.precondition=new Object[1]; this.precondition[0]=precondition; } this.decision=decision; this.asert=asert; this.CtrlN=CtrlN; this.CtrlL=CtrlL; } // metody public Object Sprawdz(Object object){ for(int i=0;i list= new ArrayList(); // deklaracja atrybutow String dniprac[]={"monday","tuesday","wednesday","thurstday","friday"}; String dniwolne[]={"saturday","sunday"}; String winter[]={"december","january","february"}; String spring[]={"march","april","may"}; String summer[]={"june","july","august"}; String fall[]={"september","october","november"}; Integer before17[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}; Integer ANY[]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24}; Integer after9[]={10,11,12,13,14,15,16,17,18,19,20,21,22,23,24}; Integer in9and17[]={9,17}; // deklaracja regul list.add(new Regula(2,1,dniprac,null,"workday",null));//regula1 list.add(new Regula(2,0,dniwolne,null,"weekend",null));//regula2 list.add(new Regula(6,3,"workday",before17,"dbh",null));//regula3 list.add(new Regula(6,4,"workday",ANY,"ndbh",null)); //regula4 list.add(new Regula(6,5,"workday",after9,"ndbh",null));//regula5 list.add(new Regula(6,2,"weekend",in9and17,"ndbh",null));//regula6 list.add(new Regula(12,7,winter,null,"winter",null)); //regula7 list.add(new Regula(14,8,spring,null,"spring",null)); //regula8 list.add(new Regula(16,9,summer,null,"summer",null)); //regula9 list.add(new Regula(10,6,fall,null,"fall",null)); //regula10 list.add(new Regula(0,11,"ndbh","summer",null,27)); //regula11 list.add(new Regula(0,12,"dbh","summer",null,24)); //regula12 list.add(new Regula(0,13,"ndbh","spring",null,15)); //regula13 list.add(new Regula(0,14,"dbh","spring",null,20)); //regula14 list.add(new Regula(0,15,"ndbh","winter",null,14)); //regula15 list.add(new Regula(0,16,"dbh","winter",null,18)); //regula16 list.add(new Regula(0,17,"ndbh","fall",null,16)); //regula17 list.add(new Regula(0,0,"dbh","fall",null,20)); //regula18 // przykladowe uzycie metody System.out.println(list.get(0).Sprawdz("tuesday")); System.out.println(list.get(17).Sprawdz("dbh","fall")); } }