java基础 时间和集合

这篇博客介绍了Java中如何使用Calendar类进行日期时间的获取与设置,包括年份、月份、星期等信息,并展示了日期的加减操作。此外,还讲解了ArrayList的使用,如添加、删除元素以及获取集合大小等方法。最后,文章阐述了HashMap的创建、键值对的添加、删除、查找以及遍历Map的各种方式。
摘要由CSDN通过智能技术生成
日历时间
package com.java基础.test0806;

import java.util.Calendar;
import java.util.Date;

public class Test {
    public static void main(String[] args) {
        Calendar c = Calendar.getInstance();
        System.out.println(c);
        //获取年份
        System.out.println(c.get(Calendar.YEAR));
        //获取月
        System.out.println(c.get(Calendar.MONTH));
        //获取星期 星期天是一周的第一天
        System.out.println(c.get(Calendar.DAY_OF_WEEK));
        System.out.println(c.get(Calendar.HOUR_OF_DAY));
        System.out.println(c.get(Calendar.MINUTE));
        System.out.println(c.get(Calendar.SECOND));

        //设置时间2021-08-08 18:00:00
        c.set(2021,7,8,18,0,0);

        //一个月后
        c.add(Calendar.MONTH,1);

        //两年前
        c.add(Calendar.YEAR,-2);

        //两个星期后
        c.add(Calendar.DAY_OF_WEEK,2);

        //Calendar 类型转换为Date类型
        Date date = c.getTime();
        System.out.println(date);

        Date now = new Date();
        //
        c.setTime(now);

        //获取一个月当中最大的天数
        System.out.println(c.getActualMaximum(Calendar.DAY_OF_MONTH));

    }
}

集合
package com.java基础.test0806;

import java.util.ArrayList;

public class Test2 {
    public static void main(String[] args) {

        //创建一个list集合对象,存放String类型的数据,list是有序的,可重复
        ArrayList<String> list = new ArrayList<>();

        //集合中添加元素
        list.add("张三");
        list.add("李四");
        list.add("王五");
        list.add("李四");
        System.out.println(list);//[张三, 李四, 王五, 李四]

        //在指定位置添加元素,第一个序号为0
        list.add(0,"赵六");
        System.out.println(list);//[赵六, 张三, 李四, 王五, 李四]

        //获取集合元素的个数
        System.out.println(list.size());//5

        //判断集合元素是否为空
        System.out.println(list.isEmpty());//false

        //判断集合中是否包含某个元素,依据什么去判断?
        System.out.println(list.contains("张三"));//true


        //删除集合中的元素,根据元素删除,根据位置删除
        list.remove(0);
        System.out.println(list);//[张三, 李四, 王五, 李四]
        System.out.println(list.remove("李四"));
        System.out.println(list);


    }
}

map
package com.java基础.test0806;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.function.BiConsumer;

public class Test5 {
    public static void main(String[] args) {
        //创建一个map,键式String类型,值是Student类型,map是无序的,
        // 元素是一个个的键值对组成,,一个键对应一个值,相同的键值会被替换
        HashMap<String,Student> map = new HashMap<>();
        //添加元素,键不能一样,如果一样,后面的值会替换前面的值
        map.put("张三",new Student("张三","男",20));
        map.put("李四",new Student("李四","女",19));
        map.put("王五",new Student("王五","男",21));
        System.out.println(map);

        //根据键的名称获取对应的值
        System.out.println(map.get("张三"));
        //获取map的个数
        System.out.println(map.size());

        // 根据键 删除元素,返回删除的元素-- 根据equals
        // Student{name='李四', sex='女', age=19}
        System.out.println(map.remove("李四"));
        System.out.println(map);

        //是否包含指定的的值,根据什么依据 equals
        System.out.println(map.containsValue(new Student("王五", "男", 21)));
        
        //获取map所有元素
        Set<String> set = map.keySet();
        System.out.println(set);
        
        //获取map所有元素的值
        Collection<Student> values = map.values();
        System.out.println(values);

        //遍历map中所有元素
        Set<Map.Entry<String, Student>> entries = map.entrySet();
        for (Map.Entry<String, Student> entry:entries){
            //分别获取键和值
            System.out.println(entry.getKey()+"<------------>"+entry.getValue());

        }

        map.forEach(new BiConsumer<String, Student>() {
            @Override
            public void accept(String s, Student student) {
                System.out.println(s +"<------->"+ student);
            }
        });
        map.forEach((s,student) -> System.out.println(s+"<----------->"+student));
        //清空所有的元素
        map.clear();
    }



}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值