• 【Java常用类之date类 19】


    一、练习题:预定酒店

    package com.JavaStudy.studyArrayTest0619;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 09:58
     */
    public class Room {
        private String no;//房间编号
        private String type;//房间类型:标准间、豪华间、单人间
        private boolean status;//房间状态:未预定false,已预定true
    
        public void setNo(String no){
            this.no = no;
        }
        public String getNo(){
            return no;
        }
        public void setType(String  type){
            this.type = type;
        }
        public String getType(){
            return type;
        }
        public void setStatus(boolean status){
            this.status=status;
        }
        public boolean getStatus(){
            return status;
        }
    
        Room(String no,String type,boolean status){
            this.no = no;
            this.type = type;
            this.status = status;
        }
    
        //重写toString方法,输出酒店的实际信息
        public String toString(){
            return "{"+no+","+type+","+(status?"占用":"空闲")+"}";
        }
    }
    package com.JavaStudy.studyArrayTest0619;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 09:58
     * 需求:规定酒店:5层10个房间
     * 1,2层是标准间
     * 3,4层是豪华间
     * 5层是单人间
     */
    public class Hotel {
        private Room[][] rooms;
    
        //创建酒店
        public Hotel(){
            //创建对象给二位数组进行赋值
            rooms = new Room[5][10];//5层10个房间
            for(int i=0;i<rooms.length;i++){
                for(int j=0;j<rooms[i].length;j++){
                    if(i==0||i==1){
                        rooms[i][j] = new Room((i+1)*100+j+1+"","标准间",false);
                    }else if(i==2||i==3){
                        rooms[i][j] = new Room((i+1)*100+j+1+"","豪华间",false);
                    }else if(i==4){
                        rooms[i][j]=new Room((i+1)*100+j+1+"","单人间",false);
                    }
                }
            }
        }
    
        //修改酒店的房间状态
        public void updateRoomStatus(String no,boolean status){
            for(int i=0;i<rooms.length;i++){
                for(int j=0;j<rooms[i].length;j++){
                    Room room = rooms[i][j];
                    if (room.getNo().equals(no)) {
                        room.setStatus(status);
                        return;
                    }
                }
            }
        }
    
        //预定房间
        public void order(String no){
            updateRoomStatus(no,true);
        }
    
        //退房
        public void exit(String no){
            updateRoomStatus(no,false);
        }
    
        //显示酒店状态以方便服务员查看
        public void print(){
            for(int i=0;i<rooms.length;i++){
                for(int j=0;j<rooms[i].length;j++){
                    Room room = rooms[i][j];
                    System.out.print(room);
                }
                System.out.println();
            }
        }
    
    }
    package com.JavaStudy.studyArrayTest0619;
    
    import java.util.Scanner;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 09:58
     */
    public class Test {
        public static void main(String[] args){
            Hotel h = new Hotel();
    
            //Scanner类接收和扫描键盘输入
            Scanner s = new Scanner(System.in);
    
            System.out.println("欢迎使用酒店系统");
            System.out.println("功能编号选择功能:1.预定房间 2.退房 3.查看房间状态 4.退出系统");
    
            while (true){
                System.out.print("请输入功能编号:");
    
                //功能编号
                String sno = s.next();
    
                if("1".equals(sno)){
                    System.out.print("请输入预定房间的编号:");
                    String roomNo = s.next();
                    h.order(roomNo);
                    System.out.print("房间已预定,请按3查看预定状态"+"	");
                }else if("2".equals(sno)){
                    System.out.print("请输入退房的房间编号:");
                    String roomNo = s.next();
                    h.exit(roomNo);
                    System.out.print("房间已退,请按3查看预定状态"+"	");
                }else if("3".equals(sno)){
                    h.print();
                }else if("4".equals(sno)){
                    System.out.print("已退出酒店系统");
                    return;
                }else{
                    System.out.println("请选择正确的功能编号!");
                }
            }
        }
    }

    二、Date类

    1、获取1970 1.1号 0时0分0秒到当前时间一共多少毫秒(关键字:currentTimeMillis)

    package com.JavaStudy.wrapperDate0619;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 16:14
     * 获取1970 1.1号 0时0分0秒到当前时间一共多少毫秒
     */
    public class DateTest01 {
        public static void main(String[] args){
            long now = System.currentTimeMillis();
    
            System.out.println(now);
        }
    }

    2、获取系统当前时间并转换日期格式(Date -- > String)(关键字:format)

    package com.JavaStudy.wrapperDate0619;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 16:30
     * 获取当前时间
     */
    public class DateTest02 {
        public static void main(String[] args){
            Date date = new Date();
    
            System.out.println(date);//Fri Jun 19 16:36:29 CST 2020
    
            //Date格式转换成String格式
            //创建日期格式对象
            SimpleDateFormat simple = new SimpleDateFormat("yyyy-MM月dd日 HH:mm:ss SSS");
            //开始格式化:Date --> String
            String formatDate =simple.format(date);
            System.out.println(formatDate);
        }
    }

    3、把String类型的时间转换成Date格式(关键字:parse)

    package com.JavaStudy.wrapperDate0619;
    
    import java.text.ParseException;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * @Author wufq
     * @Date 2020/6/19 16:48
     * String类转换成Date
     */
    public class DateTest03 {
        public static void main(String[] args) throws ParseException {
            String Sdate = "2020年06月19日 16:47:59 908";
    
            //创建日期格式对象
            SimpleDateFormat Sformat = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss SSS");
            //将字符串转换成日期格式
            Date t = Sformat.parse(Sdate);
    
            System.out.println(t);
    
        }
    }
  • 相关阅读:
    memcached与.NET的融合使用(二)
    memcached与.NET的融合使用(一)
    使用window2003安装邮件服务器最新实际操作记录
    2014 -> 2015
    数据挖掘入门 资料和步骤
    CSDN 论坛招聘区是不是有潜规则?在Cnblog招个人试试...
    C#薪水和前途
    面试准备
    面试准备
    面试准备
  • 原文地址:https://www.cnblogs.com/frankruby/p/13175429.html
Copyright © 2020-2023  润新知