第28天学习打卡(Date和Calendar类 基本类型的包装类 集合 增强for循环 )
Date和Calendar类
简介
日期和日历类,用于操作日期相关信息。
构造方法
Date():
构造一个日期对象,当前系统时间,精确到毫秒。
Date(long):
构造一个日期对象,时间为自"1970年1月1日00:00:00GMT"起,至指定参数的毫秒数
成员方法
long getTime():
将日期对象转换成对应时间的毫秒值
static Calender getInstance():
根据当前系统时区和语言环境获取日历对象
int get(int field):
返回给定日历字段的值
void set(int field, int value):
将给定的日历字段设置为指定的值
package cn.itcast.demo08;
/*
Calendar类:
简介:
日历类,用于操作日期相关的信息。
成员方法:
static Calendar setInstance():根据当前系统时区和语言环境获取日历对象
int get(int field):返回给定日历字段的值
void set(int field, int value):将给定的日历字段设置为指定的值
*/
import java.util.Calendar;
public class Test2 {
public static void main(String[] args) {
//抽象类不能new
//创建Calendar类型的对象
//在Java中表示月份数字是0-11
Calendar c = Calendar.getInstance();
System.out.println(c);
//获取年月日信息
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);//Java中使用0-11的数字表示月份,对应1-12月
int day = c.get(Calendar.DATE);
System.out.println(year + "年" + (month + 1) + "月" + day + "日");
System.out.println("==========================");
//设置指定时间为:2022年2月2日
c.set(Calendar.YEAR ,2022);
int year2 = c.get(Calendar.YEAR);
System.out.println(year2 + "年" +(month + 1) + "月" + day + "日");
System.out.println("========================");
c.set(2022,1,2);
//重新获取年月日的值
int year3 = c.get(Calendar.YEAR);
int month3 = c.get(Calendar.MONTH);
int day3 = c.get(Calendar.DATE);
System.out.println(year3 + "年" +(month3 + 1) + "月" + day3 + "日");
}
}
基本类型的包装类
简介
基本数据类型不是对象,所以Java针对基本类型提供了对应的包装类,以对象的形式来使用。
装箱
基本类型转包装类型(对象类型)
拆箱
包装类型(对象类型)转基本类型
成员方法
static 基本类型parseXxx(String):
将字符串类型的数据转换成对应的基本类型
package cn.itcast.demo09;
/*
包装类:
简介
基本数据类型不是对象,所以java针对基本类型提供了对应的包装类,以对象的形式来使用。
基本类型 对应的 包装类(可以理解为:就是引用类型)
byte Byte
short Short
int Integer
long Long
char Character
float Double
boolean Boolean
装箱
基本类型转包装类型(对象类型)
拆箱
包装类型(对象类型)转基本类型
成员方法
static 基本类型paraseXxx(String):将字符串类型的数据转换成对应的基本类型
例如:
static int parseInt(String):将字符串类型的整数转换成对应的int类型的整数
注意:
除了Character类以外,其他的7种包装类都有paraseXxx()方法。
因为如果字符串想转换成char类型的数据,可以通过:String类中的toCharArray().charAt();
*/
public class Test {
public static void main(String[] args) {
//因为变量a属于基本类型,不能通过 对象名. 的形式调用方法
//解决方案:将其转换成对应的 包装类(引用类型)即可
int a = 10;
//装箱
Integer i1 = new Integer(20);
//拆箱
int b = i1.intValue();
System.out.println(i1);
System.out.println(b);
//JDK5的新特性 自动拆装箱
Integer i2 = 30;//装箱
int c = i2;//拆箱
System.out.println("===================");
// 需求:将字符串类型的“10”,转换成int类型的10
String s = "10";
int num = Integer.parseInt(s);
System.out.println("num: " + num);
System.out.println("num + 100:" + (num
+ 100));
}
}
输出数据:
20
20
num: 10 num + 100:110
Process finished with exit code 0
集合简介
集合
简称集,是用来存储多个元素的容器
集合和数组的区别
元素类型:
集合:引用类型(存储基本类型时自动装箱)
数组:基本类型、引用类型
元素个数:
集合:不固定,可任意扩容
数组:固定,不能改变容量
集合的好处:
不受容器大小限制,可以随时添加、删除元素
提供了大量操作元素的方法(判断、获取等)
Java的集合体系
单列集合(Collection):
List:
ArrayList
Set:
HashSet
双列集合(Map: key,value):
Map:
HashMap
Collection Map List Set:都是接口
ArrayList HashSet HashMap:实现类
List 集合的特点
特点:
可重复、有序(存取顺序相同)
应用:
List list = new ArrayList();
案例: List集合的简单使用
需求:向List集合中添加三个元素,并遍历打印
分析:A. 向集合中添加元素的方法为:add()
B.遍历集合的方式:for循环
C.获取集合中元素个数的方法:size()
步骤:
1.创建集合对象:
List list = new ArrayList();
2.分别创建三个Student对象
3.使用add方法将Student对象添加到集合中
4.使用for循环遍历集合并打印
增强for循环和迭代器
简化数组和集合的遍历
增强for循环的格式:
for(数据类型 变量名:数组或者集合对象){
//循环体,变量即元素
}
package cn.itcast.demo011;
/*
增强for格式:
for(元素的数据类型 变量名:要遍历的数组或者集合对象){
//循环体 ,变量也就是元素
增强for的快捷方式:
iter----->回车
注意:
增强for的底层依赖的是迭代器(Iterator)
增强for就是迭代器的简写形式
}
*/
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
//需求:通过增强for遍历List集合
//1.创建集合对象
List list = new ArrayList();
//2.创建元素对象
//3.将元素对象添加到集合对象中
list.add(10);
list.add(10);
list.add(30);
list.add(20);
list.add(40);
//4.遍历集合
for(Object obj:list){
//obj是集合中的元素,其本身应该是Integer类型的数据
Integer ii =(Integer)obj;
System.out.println(ii);
}
System.out.println("===============");
for (Object obj : list) {
Integer ii = (Integer) obj;
System.out.println(ii);
}
}
}
第28天学习打卡(Date和Calendar类 基本类型的包装类 集合 增强for循环 )的更多相关文章
- Java从零开始学三十一(DATE和Calendar类)
一.Date类 Date类是一个相对较为简单的操作类,在使用中直接使用java.util.Date类的构造方法并进行输出就可以得到一个完整的日期 二.Calendar类 Calendar类可以将取得的 ...
- Java基础 与时间日期相关的类:System -Date -SimpleDateFormat -Calendar类 -解决后缀.000Z 的时区问题
笔记总结: /**与时间相关的类:System_Date_SimpleDateFormat_Calendar类 * 1.system 类下的currentTimeMillis() * 输出从1970年 ...
- JAVA基础——Date和Calendar类
1计算某一月份的最大天数 Calendar time=Calendar.getInstance(); time.clear(); time.set(Calendar.YEAR,year); //yea ...
- 射频识别技术漫谈(28)——基于MF1射频卡的酒店门锁设计
电子门锁是现代星级酒店管理电子化.智能化的重要电子设备.相较于传统的机械锁,基于RFID技术的电子门锁使用方便,易于管理,安全性高,可实现对开锁用户的分优先级自动管理,对房间入住信息实现自动统计与报表 ...
- Java学习--使用 Date 和 SimpleDateFormat 类表示时间
使用 Date 和 SimpleDateFormat 类表示时间 在程序开发中,经常需要处理日期和时间的相关数据,此时我们可以使用 java.util 包中的 Date 类.这个类最主要的作用就是获取 ...
- Java学习(正则表达式、Date类、DateFormat类、Calendar类)
一.正则表达式 1.概念:英语:Regular Expression,在代码中常简写为regex.正则表达式,是一个字符串,使用单个字符串来描述.用来定义匹配规则,匹配一系列符合某个句法规则的字符串. ...
- Java学习关于时间操作的应用类--Date类、Calendar类及其子类
Date类 Date类封装了当期时间和日期.与Java1.0定义的原始版的Date类相比,Date类发生了本质的变化.在Java1.1发布时,原始版Date类定义的许多功能被移进Calendar类和D ...
- JAVA学习第四十六课 — 其它对象API(二)Date类 & Calendar类(重点掌握)
Date类(重点) 开发时,会时常遇见时间显示的情况,所以必须熟练Date的应用 <span style="font-family:KaiTi_GB2312;font-size:18p ...
- 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环
目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...
随机推荐
- ApiTesting全链路自动化测试框架 - 初版发布(一)
简介 此框架是基于Python+Pytest+Requests+Allure+Yaml+Json实现全链路接口自动化测试. 主要流程:解析接口数据包 ->生成接口基础配置(yml) ->生 ...
- fsck获取文件的block信息和位置信息
原文链接:lxw的大数据田地 » hdfs fsck命令查看HDFS文件对应的文件块信息(Block)和位置信息(Locations) 关键字:hdfs fsck.block.locations 在H ...
- CodeForces - 948C (前缀和+二分)
博客界面的小人搞不好导致无心写博客 题意:tyd非常喜欢玩雪,下雪下了n天,第i天她会堆一堆大小为Vi的雪堆,但因为天气原因,每堆雪会融化Ti,问每天总共融化了多少雪: 直接上代码+注释 1 #inc ...
- 【noi 2.6_2988】计算字符串距离(DP)
题意: 给两个字符串,可以增.删.改,问使这两个串变为相同的最小操作数. 解法:(下面2种的代码主要区别在初始化和,而状态转移方程大家可挑自己更容易理解的方法打) 1.f[i][j]表示a串前i个和b ...
- 二分图最大权匹配问题&&KM算法讲解 && HDU 2255 奔小康赚大钱
作者:logosG 链接:https://www.cnblogs.com/logosG/p/logos.html (讲解的KM算法,特别厉害!!!) KM算法: 现在我们来考虑另外一个问题:如果每个员 ...
- POJ_2112 二分图多重匹配
题意: //题意就是给你k个挤奶池和c头牛,每个挤奶池最多可以来m头牛,而且每头牛距离这k这挤奶池//有一定的距离,题目上给出k+c的矩阵,每一行代表某一个物品距离其他物品的位置//这里要注意给出的某 ...
- Codeforces Round #479 (Div. 3) D. Divide by three, multiply by two (DFS)
题意:给你一个长度为\(n\)的序列\(a\).对它重新排列,使得\(a_{i+1}=a_{i}/3\)或\(a_{i+1}=2*a_{i}\).输出重新排列后的序列. 题解:经典DFS,遍历这个序列 ...
- Python 闭包及装饰器
闭包是指延伸了作用域的函数. 自由变量(free variable) 指未在本地作用域中绑定的变量 函数装饰器用于在源码中标记函数, 以某种方式增强函数的行为. 装饰器实质,把被装饰的函数替换为新函数 ...
- linux 部署 .net core mvc
1.本地编写一个mvc网站 代码编辑器:Visual studio 2017.2019.Visual Code 均可 1)搭建 略. (请自行搜索如何编辑mvc,或看文末参考链接) 2)配置 Prog ...
- [笔记]吞吐量(TPS)、QPS、并发数、响应时间(RT)概念
开发的原因,需要对吞吐量(TPS).QPS.并发数.响应时间(RT)几个概念做下了解,查自百度百科,记录如下: 1. 响应时间(RT) 响应时间是指系统对请求作出响应的时间.直观上看,这个指标与人对软 ...