⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hdtable.java

📁 这是一份标准的课程设计文档
💻 JAVA
字号:
/******************************************
*作业列表[作业ID][起始地址][大小][作业名]
******************************************/
package harddisk;
import myException.*;

public class HDTable
{
	private static int Table[][];
	private static String Name[];
	private static int Size;
	//初始化作业列表
	public HDTable(int size)
	{
		Size	=	size;
		Table	=	new int[Size][3];
		Name	=	new String[Size];
		for (int i=0;i<Size ;i++ )
		{
			Table[i][0]	=	0;
			Table[i][1]	=	-1;
			Table[i][2]	=	0;
			Name[i]		=	"";
		}
	}
	/***********************************************
	*功能描述:	增加一作业记录到列表尾部
	*参数说明:	value[]:一条作业列表记录
	***********************************************/
	public void add(int value[],String name)
		throws myException
	{
		int index		=	this.last();
		if(index<Size)
		{
			Table[index][0]	=	value[0];
			Table[index][1]	=	value[1];
			Table[index][2]	=	value[2];
			Name[index]	=	name;
		}
		else throw new myException("作业表已经达到最大记录数,不可以再添加了!");
	}
	/***********************************************
	*功能描述:	取得最后一条记录的序号
	***********************************************/
	public int last()
	{
		for (int i=0;i<Size ;i++ )
		{
			if (Table[i][1]==-1)
			{
				return i;
			}
		}
		return -1;
	}
	/***********************************************
	*功能描述:	取得列表中某一记录
	*参数说明:	index:	记录序号
	***********************************************/
	public int[] getValue(int index)
	{
		return	Table[index];
	}
	public int getValue(int index,int offset)
	{
		return	Table[index][offset];
	}
	public String getName(int index)
	{
		return Name[index];	
	}
	public void setValue(int index,int value[])
	{
		Table[index]	=	value;
	}
	public void setValue(int index,int offset,int value)
	{
		Table[index][offset]	=	value;
	}
	public void setName(int index,String name)
	{
		Name[index]	=	name;	
	}
	/***********************************************
	*功能描述:	寻找作业ID=id的作业在表中的序号
	*参数说明:	id:作业ID
	***********************************************/
	public int findID(int id)
	{
		for (int i=0;i<Size ;i++ )
		{
			if (Table[i][0] == id)
			{
				return i;
			}
		}
		return -1;
	}
	public int findIndex(int id)
	{
		for (int i=0;i<Size ;i++ )
		{
			if (Table[i][0] == id)
			{
				return Table[i][1];
			}
		}
		return -1;	
	}
	public int getID(int index)
	{
		return 	Table[index][0];
	}
	public int getJobSize(int id)
	{
		for(int i=0;i<Size;i++)
		{
			if(Table[i][0]==id)
				return Table[i][2];
		}
		return	-1;
	}
	public void Remove(int index)
	{
		for(int i=index;i<Size-1;i++)
		{
			Table[i][0] = Table[i+1][0];	
			Table[i][1] = Table[i+1][1];
			Table[i][2] = Table[i+1][2];
			Name[i] = Name[i+1];
		}	
	}
	public int UsedSize()
	{
		int num=0;
		for(int i=0;i<Size;i++)
		{
			if(Table[i][0]!=0)
				num++;
		}
		return num;
	}
};

⌨️ 快捷键说明

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