随机数,日期类,包装类

1.随机数

 随机数在常用业务中也很常用,比如抽奖、随机点名等。

Random random = new Random();

random.nextInt(); // int范围内产生一个随机数

random.nextInt(10); // 返回0~9之间的随机数

固定的随机数列(10为随机数种子,如果创建了,在创建随机数的时候就会出现固定的随机数)

Random random = new Random(10);

for(int i = 0; i < 10; i++) {

    System.out.println(random.nextInt());

}

 限定随机数范围:int randNumber = rand.nextInt(MAX - MIN + 1) + MIN;

随机生成一个1到6之间的随机数

Random ra = new Random();
        int b = ra.nextInt(6) + 1;
        System.out.println(b);

2.日期类

2.1 Date

最基础的一个日期类。

public class Test02 {
    public static void main(String[] args) {
        //获取当前时间的Data对象
        Date date = new Date();
        //date.getYear()获取1900到目前的时间差
        System.out.println(date.getYear() + 1900);
        //date.getMonth()-> 一月~十二月 0~11
        System.out.println(date.getMonth() + 1);
        System.out.println(date.getDay());// 星期天~星期六 0~6
        System.out.println(date.getDate());//获取
        System.out.println(date.getHours());//获取小时
    }
}

2.2日历类

// 获取日历对象
Calendar c = Calendar.getInstance();

System.out.println("获取年份:"+c.get(Calendar.YEAR));
System.out.println("获取月份:"+(c.get(Calendar.MONTH)+1)); //月份0~11
System.out.println("获取日期(今天是该月的第几天):"+c.get(Calendar.DAY_OF_MONTH));
System.out.println("获取小时数(12小时制):"+c.get(Calendar.HOUR));
System.out.println("获取小时数(24小时制):"+c.get(Calendar.HOUR_OF_DAY));
System.out.println("获取分钟数:"+c.get(Calendar.MINUTE));
System.out.println("获取秒钟数:"+c.get(Calendar.SECOND));
System.out.println("获取毫秒数:"+c.get(Calendar.MILLISECOND));
System.out.println("获取当前是该年中的第几天:"+c.get(Calendar.DAY_OF_YEAR));
System.out.println("获取今天是周几:"+c.get(Calendar.DAY_OF_WEEK));

2.3格式化日期类

 Date date1 = new Date();
        //通过yyyy-MM-dd hh:mm:ss去创建一个格式化日期类的对象sdf
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
        // 将当前日期转化成yyyy-MM-dd HH:mm:ss格式的字符串
        String format = sdf.format(date1);
        System.out.println(format);
// 将日期格式的字符串转化成Date对象
    String dateStr = "2000-01-01 12:00:00";
    try {
        Date date2 = simpleDateFormat.parse(dateStr);
        System.out.println(date2);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

3.包装类

Java里面8个基本数据类型都有相应的类,这些类叫做包装类。

把基本数据类型转换成类,包装类提供了很多的方法给我们使用(查看JDK文档)。

| 基本数据类型 | 包装类    |

| ------------- | -------------  |

| byte         | Byte           |

| short        | Short          |

| int            | Integer       |

| long         | Long          |

| float         | Float          |

| double     | Double       |

| char         | Character  |

| boolean   | Boolean     |

3.1 手动拆箱与自动拆箱

自动拆箱:就是将包装类自动转换成对应的基本数据类型。

public class Test05 {
    public static void main(String[] args) {
        String s1 = "123";
        //使用包装类方法
        int i = Integer.parseInt(s1);
        System.out.println(i);
        //创建包装类
        Integer integer = new Integer(100);
        //手动拆箱
        int i1 = integer.intValue();
        System.out.println(i1);
        //自动拆箱
        Integer i2 = new Integer(200);
        System.out.println(i2);
        //基本数据类型 -> 包装类 = 装箱
        //包装类 -> 基本数据类型 = 拆箱
    }
}

3.2 自动装箱: 就是将基本数据类型自动转换成对应的包装类。

public class Test06 {
    public static void main(String[] args) {
        int i3 = 10;
        //手动装箱
        Integer integer = Integer.valueOf(i3);
        System.out.println(integer);
        //自动装箱
        int i4 = 20;
        Integer integer1 = i4;
        System.out.println(integer);
    }
}

注:包装类在和基本数据类型做比较时自动转化为基本数据类型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值