首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

小弟我有一段 java程序需要完善

2012-01-29 
我有一段 java程序需要完善/**工件类*/classWorkPiece{publicbooleanisProcessingfalse//是否在被加工中

我有一段 java程序需要完善
/**
工件类
*/
class   WorkPiece  
{
public   boolean   isProcessing   =   false;//是否在被加工中
                public   boolean   Processed[5]   =   false;//机床加工完成
                public   int   workertime[5];//机床加工时间
                public   int   starttime[5];//每个机床上开始时间点
                public   int   endtime[5];//每台机床加工结束时间

//开始加工
                public   startworked(int   workernum,   int   time)
                {
isProcessing=true;
starttime[workernum]=time;
                               
                }

//结束加工
                public   endworked(int   workernum,   int   time)
                {
                              isProcessing=false;
                              endtime[workernum]=time;
                              Processed[workernum]   =   true;
                }  
               
}

/**
机床类
*/
class   Worker
{
public   boolean   isworking   =   false;//是否在工作中
                public   WorkPiece;//这台机床上正在被加工的工件
public   int   worklongth;//加工中工件已加工时长
                public   int   starttime;//正在加工的开始时间
               
}

/**
加工场
*/
Class   Factory
{
WorkPiece   toprocessworkpiece   =workpiece[0]   ;
                Worker         toprocessworker;
int   time   =   0;//总工作时长
WorkPiece   workpiece[4];  
WorkPiece   workpiece[0]   =   new   WorkPiece();
                WorkPiece   workpiece[1]=   new   WorkPiece();
                WorkPiece   workpiece[2]=   new   WorkPiece();
                WorkPiece   workpiece[3]=   new   WorkPiece();

                Worker   work[5]
Worker   work[0]   =   new   Worker();
Worker   work[1]   =   new   Worker();
Worker   work[2]   =   new   Worker();
Worker   work[3]   =   new   Worker();
Worker   work[4]   =   new   Worker();

public   void   work()
{

                                //把机床加工时间付给每个工件
                                workpiece[1].workertime[0]   =155;


workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
workpiece[1].workertime[0]   =155;
                                ..............................
                                while(true)
                                {
time++;
                                                whoendprocess();
whostartprocess();

                                                if(都被加工完)
                                                {
跳出;
                                                }

}
}

              //检查当前时刻谁要被加工
public   whostartprocess()
{
//循环工件
                                for   (i=0,i <4,i++)
{
//察看工件在每个机床上的加工时间,挑出这个时刻谁可以被加工
                                              for(j=0,j <5,j++)
{

                                                                if(workpiece[i].Processed[j]   =   true)   //工件被此机床加工过跳出
                                                                break;
if(workpiece[i].isProcessing=true   ||   work[j].isworking=true   )//加工中跳出
                                                                break;
                                                                for(k=0,k <5,k++)
                                                                {


            if(toprocessworkpiece.Processed[j]   =   true)
                                                                            break;
                                                                            if(workpiece[i].workertime[j]   >   toprocessworkpiece.workertime[k])
                                                                          toprocessworkpiece   =   workpiece[i];
                                                                            toprocessworker   =   work[k];
            work[k].WorkPiece=toprocessworkpiece;
            work[k].WorkPiece.startworked(k,time);

                                                                }
                                                             
}
}
                               
}
              //检查当前时刻谁被加工完
                public   whoendprocess()
                {
                            for(i=0,i <5,i++)
                            {
                                      if(work[i].WorkPiece   !=   null)
                                      {
                                                if(   (time-work[i].starttime)   >   work[i].WorkPiece.workertime[i];
                                                work[i].WorkPiece.endworked(i,   time);
                                      }
                            }


                }
                             
}

[解决办法]
樓主想幹嘛
想考一下大家?
[解决办法]
顶!
[解决办法]
问题是什么?

热点排行