📄 libsys.java
字号:
if(arrayOfStaffs[index].getItemBorrowed()==0)
{
for(int i=index;i<numberOfStaff-1;i++)
{
arrayOfStaffs[i]=arrayOfStaffs[i+1];
}
numberOfStaff--;
}//delete the element from the array. Copy the rest element one position forward.
else System.out.println("ERR_DELETE: "+deleteID+" can not be deleted! Should return all borrowed items first.");
}
}
else if(commander.equalsIgnoreCase("DEL_iTEM"))
{
int index=matchString(deleteID,arrayOfItems);
if(arrayOfItems[index].getAvailable())
{
for(int i=index;i<numberOfItem-1;i++)
{
arrayOfItems[i]=arrayOfItems[i+1];
}
numberOfItem--;
}//delete the element from the array. Copy the rest element one position forward.
else System.out.println("ERR_DELETE: "+deleteID+" can not be deleted! It should be returned first.");
}
}
public void returnItems(String readLine)
{
String delimiters=" ";
StringTokenizer wordFactory=new StringTokenizer(readLine,delimiters);
@SuppressWarnings("unused")
String commander=wordFactory.nextToken();
String returnID=wordFactory.nextToken();
int indexOfItem=matchString(returnID,arrayOfItems);
if(arrayOfItems[indexOfItem].getAvailable())
{
System.out.println("ERR_RETURN: "+returnID+" has not been borrowed!");
}
else
{
String memberID=arrayOfItems[indexOfItem].getKeeper();//get the ID who borrowed the item.
if(memberID.startsWith("STUD"))
{
int indexOfStudent=matchString(memberID,arrayOfStudents);
arrayOfStudents[indexOfStudent].returnItem(arrayOfStudents, indexOfStudent, arrayOfItems, indexOfItem);
}
else if(memberID.startsWith("STAFF"))
{
int indexOfStaff=matchString(memberID,arrayOfStaffs);
arrayOfStaffs[indexOfStaff].returnItem(arrayOfStaffs, indexOfStaff, arrayOfItems, indexOfItem);
}
}
}
public void list(String readLine)
{
String delimiters=" ";
StringTokenizer wordFactory=new StringTokenizer(readLine,delimiters);
String commander=wordFactory.nextToken();
if(commander.equalsIgnoreCase("LIST_MEMB"))
{
if(wordFactory.hasMoreTokens())//Chech if the commander is requiring a full list or details of a certain ID.
{
String memberID=wordFactory.nextToken();
if(memberID.startsWith("STUD"))//List the details of a certain student.
{
int indexOfStudent=matchString(memberID,arrayOfStudents);
if(arrayOfStudents[indexOfStudent].getItemBorrowed()==0)
{
System.out.println(arrayOfStudents[indexOfStudent].getMemberID()+","+arrayOfStudents[indexOfStudent].getGivenName()+","+arrayOfStudents[indexOfStudent].getFamilyName()+","+arrayOfStudents[indexOfStudent].getBirthday()+","+arrayOfStudents[indexOfStudent].getEmail()+","+arrayOfStudents[indexOfStudent].getTelephoneNumber());
}//List the ID have not borrowed any items.
else
{
String[] item=new String[10];
for(int i=0;i<arrayOfStudents[indexOfStudent].getItemBorrowed();i++)
{
item[i]=arrayOfStudents[indexOfStudent].getItemList()[i];
}//Copy the borrowed item list to a new array.
for(int i=0;i<arrayOfStudents[indexOfStudent].getItemBorrowed()-1;i++)
{
int min=i;
for(int j=i+1;j<arrayOfStudents[indexOfStudent].getItemBorrowed();j++)
if(item[j].compareTo(item[min])<0)min=j;
String temp;
temp=item[i];item[i]=item[min];item[min]=temp;
}//Sort the copyed array.
System.out.print(arrayOfStudents[indexOfStudent].getMemberID()+","+arrayOfStudents[indexOfStudent].getGivenName()+","+arrayOfStudents[indexOfStudent].getFamilyName()+","+arrayOfStudents[indexOfStudent].getBirthday()+","+arrayOfStudents[indexOfStudent].getEmail()+","+arrayOfStudents[indexOfStudent].getTelephoneNumber());
for(int i=0;i<arrayOfStudents[indexOfStudent].getItemBorrowed();i++)
{
System.out.print(","+item[i]);
}//List the borrow item in ascending order.
System.out.println();
}
}
else if(memberID.startsWith("STAFF"))//list the details of a certain staff.
{
int indexOfStaff=matchString(memberID,arrayOfStaffs);
if(arrayOfStaffs[indexOfStaff].getItemBorrowed()==0)
{
System.out.println(arrayOfStaffs[indexOfStaff].getMemberID()+","+arrayOfStaffs[indexOfStaff].getGivenName()+","+arrayOfStaffs[indexOfStaff].getFamilyName()+","+arrayOfStaffs[indexOfStaff].getBirthday()+","+arrayOfStaffs[indexOfStaff].getEmail()+","+arrayOfStaffs[indexOfStaff].getTelephoneNumber());
}//List the ID have not borrowed any items.
else
{
String[] item=new String[10];
for(int i=0;i<arrayOfStaffs[indexOfStaff].getItemBorrowed();i++)
{
item[i]=arrayOfStaffs[indexOfStaff].getItemList()[i];
}//Copy the borrowed item list to a new array.
for(int i=0;i<arrayOfStaffs[indexOfStaff].getItemBorrowed()-1;i++)
{
int min=i;
for(int j=i+1;j<arrayOfStaffs[indexOfStaff].getItemBorrowed();j++)
if(item[j].compareTo(item[min])<0)min=j;
String temp;
temp=item[i];item[i]=item[min];item[min]=temp;
}//Sort the copyed array.
System.out.print(arrayOfStaffs[indexOfStaff].getMemberID()+","+arrayOfStaffs[indexOfStaff].getGivenName()+","+arrayOfStaffs[indexOfStaff].getFamilyName()+","+arrayOfStaffs[indexOfStaff].getBirthday()+","+arrayOfStaffs[indexOfStaff].getEmail()+","+arrayOfStaffs[indexOfStaff].getTelephoneNumber());
for(int i=0;i<arrayOfStaffs[indexOfStaff].getItemBorrowed();i++)
{
System.out.print(","+item[i]);
}//List the borrow item in ascending order.
System.out.println();
}
}
}
else//Display full list of staff and student.
{
Staff[] sortedArrayOfStaffs=new Staff[100];
for(int i=0;i<numberOfStaff;i++)
{
sortedArrayOfStaffs[i]=arrayOfStaffs[i];
}//Copy array of staff to the new array.
for(int i=0;i<numberOfStaff-1;i++)
{
int min=i;
for(int j=i+1;j<numberOfStaff;j++)
{
if(sortedArrayOfStaffs[j].getMemberID().compareTo(sortedArrayOfStaffs[min].getMemberID())<0)min=j;
}
Staff temp;
temp=sortedArrayOfStaffs[i];sortedArrayOfStaffs[i]=sortedArrayOfStaffs[min];sortedArrayOfStaffs[min]=temp;
}//Sort the copyed array.
Student[] sortedArrayOfStudent=new Student[100];
for(int i=0;i<numberOfStudent;i++)
{
sortedArrayOfStudent[i]=arrayOfStudents[i];
}//Copy array of student to the new array.
for(int i=0;i<numberOfStudent-1;i++)
{
int min=i;
for(int j=i+1;j<numberOfStudent;j++)
{
if(sortedArrayOfStudent[j].getMemberID().compareTo(sortedArrayOfStudent[min].getMemberID())<0)min=j;
}
Student temp;
temp=sortedArrayOfStudent[i];sortedArrayOfStudent[i]=sortedArrayOfStudent[min];sortedArrayOfStudent[min]=temp;
}//Sort the copyed array.
for(int i=0;i<numberOfStaff;i++)//list the all the staff.
{
if(sortedArrayOfStaffs[i].getItemBorrowed()==0)
{
System.out.println(sortedArrayOfStaffs[i].getMemberID()+","+sortedArrayOfStaffs[i].getGivenName()+","+sortedArrayOfStaffs[i].getFamilyName()+","+sortedArrayOfStaffs[i].getBirthday()+","+sortedArrayOfStaffs[i].getEmail()+","+sortedArrayOfStaffs[i].getTelephoneNumber());
}
else
{
String[] item=new String[10];
for(int a=0;a<sortedArrayOfStaffs[i].getItemBorrowed();a++)
{
item[a]=sortedArrayOfStaffs[i].getItemList()[a];
}//Copy the borrowed item list to a new array.
for(int a=0;a<sortedArrayOfStaffs[i].getItemBorrowed()-1;a++)
{
int min=a;
for(int j=a+1;j<sortedArrayOfStaffs[i].getItemBorrowed();j++)
if(item[j].compareTo(item[min])<0)min=j;
String temp;
temp=item[a];item[a]=item[min];item[min]=temp;
}//Sort the copyed array.
System.out.print(sortedArrayOfStaffs[i].getMemberID()+","+sortedArrayOfStaffs[i].getGivenName()+","+sortedArrayOfStaffs[i].getFamilyName()+","+sortedArrayOfStaffs[i].getBirthday()+","+sortedArrayOfStaffs[i].getEmail()+","+sortedArrayOfStaffs[i].getTelephoneNumber());
for(int j=0;j<sortedArrayOfStaffs[i].getItemBorrowed();j++)
{
System.out.print(","+item[j]);
}
System.out.println();
}
}
for(int x=0;x<numberOfStudent;x++)//list all the student.
{
if(sortedArrayOfStudent[x].getItemBorrowed()==0)
{
System.out.println(sortedArrayOfStudent[x].getMemberID()+","+sortedArrayOfStudent[x].getGivenName()+","+sortedArrayOfStudent[x].getFamilyName()+","+sortedArrayOfStudent[x].getBirthday()+","+sortedArrayOfStudent[x].getEmail()+","+sortedArrayOfStudent[x].getTelephoneNumber());
}
else
{
String[] item=new String[10];
for(int i=0;i<sortedArrayOfStudent[x].getItemBorrowed();i++)
{
item[i]=sortedArrayOfStudent[x].getItemList()[i];
}//Copy the borrowed item list to a new array.
for(int i=0;i<sortedArrayOfStudent[x].getItemBorrowed()-1;i++)
{
int min=i;
for(int j=i+1;j<sortedArrayOfStudent[x].getItemBorrowed();j++)
if(item[j].compareTo(item[min])<0)min=j;
String temp;
temp=item[i];item[i]=item[min];item[min]=temp;
}
System.out.print(sortedArrayOfStudent[x].getMemberID()+","+sortedArrayOfStudent[x].getGivenName()+","+sortedArrayOfStudent[x].getFamilyName()+","+sortedArrayOfStudent[x].getBirthday()+","+sortedArrayOfStudent[x].getEmail()+","+sortedArrayOfStudent[x].getTelephoneNumber());
for(int y=0;y<sortedArrayOfStudent[x].getItemBorrowed();y++)
{
System.out.print(","+item[y]);
}
System.out.println();
}
}
}
}
else if(commander.equalsIgnoreCase("LIST_ITEM"))
{
if(wordFactory.hasMoreTokens())//list details of a certain item.
{
String itemID=wordFactory.nextToken();
int indexOfItem=matchString(itemID,arrayOfItems);
System.out.println(arrayOfItems[indexOfItem].getCallNumer()+","+arrayOfItems[indexOfItem].getTitle()+","+arrayOfItems[indexOfItem].getAuthor()+","+arrayOfItems[indexOfItem].getPublisher()+","+arrayOfItems[indexOfItem].getDateOfPublication());
}
else//display full list.
{
PrintedResource[] sortedArrayOfItems=new PrintedResource[100];
for(int i=0;i<numberOfItem;i++)
{
sortedArrayOfItems[i]=arrayOfItems[i];
}//copy array of items to new array.
for(int i=0;i<numberOfItem-1;i++)
{
int min=i;
for(int j=i+1;j<numberOfItem;j++)
{
if(sortedArrayOfItems[j].getCallNumer().compareTo(sortedArrayOfItems[min].getCallNumer())<0)min=j;
}
PrintedResource temp;
temp=sortedArrayOfItems[i];sortedArrayOfItems[i]=sortedArrayOfItems[min];sortedArrayOfItems[min]=temp;
}//sort the array.
for(int i=0;i<numberOfItem;i++)
{
System.out.println(sortedArrayOfItems[i].getCallNumer()+","+sortedArrayOfItems[i].getTitle()+","+sortedArrayOfItems[i].getAuthor()+","+sortedArrayOfItems[i].getPublisher()+","+sortedArrayOfItems[i].getDateOfPublication());
}
}
}
}
public void count(String readLine)
{
if(readLine.equalsIgnoreCase("COUNT_MEMB"))
{
int numberOfMember=numberOfStudent+numberOfStaff;
System.out.println(numberOfMember);
}
else if(readLine.equalsIgnoreCase("COUNT_ITEM"))
{
System.out.println(numberOfItem);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -