📄 query.java
字号:
package agenda.command;import agenda.Exception.*;import agenda.data.*;import java.util.*;import java.text.*;/** * Query command * @author wc */public class QUERY implements Command{ String userName; String password; Calendar start, end; /** * Command parse method * @param args * @throws java.lang.Exception * @throws agenda.Exception.InvalidCommandException */ public void parse(String[] args) throws Exception, InvalidCommandException { if(args.length != 5) throw new InvalidCommandException("query"); userName = args[1]; password = args[2]; try{ String format = "yyyy-MM-dd,kk:mm:ss"; SimpleDateFormat sdf = new SimpleDateFormat(format); start = new GregorianCalendar(); end = new GregorianCalendar(); start.setTime(sdf.parse(args[3])); end.setTime(sdf.parse(args[4])); } catch(Exception e){ throw e; } } /** * Command execute method * @throws java.lang.Exception * @throws agenda.Exception.InvalidIDorPasswordException */ public void execute() throws Exception, InvalidIDorPasswordException { try{ agenda.data.Data.userList.checkUser(userName, password); ArrayList<Meeting> result = new ArrayList<Meeting>(); for(Meeting m:agenda.data.Data.meetingList) if(m.creator.equals(userName)||m.partner.equals(userName)) if(!start.after(m.start)&&!end.before(m.start) &&!start.after(m.end)&&!end.before(m.end)) result.add(m); if(result.isEmpty()) System.out.println("0 result.\n"); else { System.out.print(userName + "\'s agenda in "); String format = "yyyy-MM-dd kk:mm:ss"; SimpleDateFormat df=new SimpleDateFormat(format); System.out.println(df.format(start.getTime()) + " to " + df.format(end.getTime()) + " :"); System.out.println("-----------------------------------"); for(Meeting m:result){ System.out.print(m.toString()); System.out.println("-----------------------------------"); } System.out.println(result.size() + " results.\n"); } } catch(InvalidIDorPasswordException iipe){ throw iipe; } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -