Java连载78-深入自动拆装箱、Date类和SimpleDateFormat格式化
一、深入自动拆装箱
1.直接举例:
public class D78_AutomaticUnpackingAndPacking{
public static void main(String[] args){
Integer i1 = new Integer(10);
Integer i2 = new Integer(10);
//这里不会自动进行拆箱
System.out.println(i1==i2);//false
//比较两个Integer类型的数据是否相等,不能用“=="
//Integer已经重写了Object中的equals方法
System.out.println(i1.equals(i2));//true
//重点:
Integer i3 = 128;
Integer i4 = 128;
//上面的等同于:
//Integer i3 = new Integer(128);
//Integer i4 = new Integer(128);
System.out.println(i3==i4);//false
Integer i5 = 127;//这条语句直接在方法区的整形常量池中拿来,不会再堆内存中创建这个对象
Integer i6 = 127;
System.out.println(i5==i6);//true
Integer i5 = -128;
Integer i6 = -128;
System.out.println(i5==i6);//true
Integer i5 = -129;
Integer i6 = -129;
System.out.println(i5==i6);//false
//如果数据是在-128到127之间,java中引入了”整形常量池“(可以类比字符串常量池)
String s1 = "ab";
String s2 = "ab";
System.out.println(s1==s2);//true,原因就是字符串常量池
}
}
二、日期相关的操作
1.获取当前时间
java.util.Date
import java.util.Date;
import java.text.SimpleDateFormat;
public class D78_2_{
public static void main(String[] args) throws Exception{
//之所以要抛出异常,是因为String转换为Date的时候容易报错
//获取自1970年1月1日 00时00分00秒000毫秒到当前的毫秒数
//1000毫秒等于一秒
long now = System.currentTimeMillis();
System.out.println(now);//1245839589
//获取系统当前时间
Date nowTime = new Date();
System.out.println(nowTime);//Tue Jan 30 23:21:23 CST 2020
//以上程序说明java.util.Date;已经重写了Object中的toString方法
//只不过重写的结果对于中国人来讲不是很容易理解
//java.util.Date;-->String
/*
*日期格式:
*y 年 M 月 d 日 H 小时 m 分 s 秒 S 毫秒
*/
//创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss SSS");
//开始格式化(Date-->String)
String strTime = sdf.format(nowTime)//2020年01月30日 23:29:12 567
/*
*获取特定的日期
*/
String strTime2 = "2008年08月8日 08:08:08 888";
//将String日期转换为类型Date
//String-->Date
//1.创建日期格式化对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss SSS");
//不能随意指定格式,应该和要解析的字符串的类型格式相对应
Date t1 = sdf.parse(strTime);
System.out.println(t1);
}
}
三、源码:
D78_1_AutomaticUnpackingAndPacking.java
D78_2_TimeMethodAnalysis.java
https://github.com/ruigege66/Java/blob/master/D78_1_AutomaticUnpackingAndPacking.java
https://github.com/ruigege66/Java/blob/master/D78_2_TimeMethodAnalysis.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料
Java连载78-深入自动拆装箱、Date类和SimpleDateFormat格式化的更多相关文章
- java的数据类型、自动拆装箱、字面量
java 中的数据类型分为两大类:值类型(基本数据类型)和引用类型(复合数据类型) 值类型分为 1,整数类型(byte,short,int,long) 2,浮点类型(float,double) 3, ...
- 《java入门第一季》之Integer类和自动拆装箱概述
/ * int 仅仅是一个基本类型.int有对应的类类型,那就是Integer. * 为了对基本数据类型进行更多的操作,更方便的操作,Java就针对每一种基本数据类型提供了对应的类类型--包装类类型 ...
- Java的自动拆/装箱
作者:Alvin 关键字:语法糖 类 对象 参考 Java 中的语法糖 语法糖--这一篇全了解 浅谈 Integer 类 什么是Java中的自动拆装箱 深入剖析Java中的装箱和拆箱 前言 我们知道, ...
- 一文读懂什么是Java中的自动拆装箱
基本数据类型 基本类型,或者叫做内置类型,是Java中不同于类(Class)的特殊类型.它们是我们编程中使用最频繁的类型. Java是一种强类型语言,第一次申明变量必须说明数据类型,第一次变量赋值称为 ...
- Java枚举、静态导入、自动拆装箱、增强for循环、可变参数
一.枚举简介 1.什么是枚举? 需要在一定范围内取值,这个值只能是这个范围内中的任意一个 现实场景:交通信号灯,有三种颜色,但是每次只能亮三种颜色里面的任意一个 2.使用一个关键字 enum enum ...
- Java之自动拆装箱
顾名思义,自动拆装箱就是将基本类型和包装类进行自动的互相转换. JDK5.0后,将自动装箱/拆箱引Java中. 自动装箱的过程:每当需要一种类型的对象时,这种基本类型就自动地封装到与它相同类型的包装中 ...
- 静态导入方法即自动拆装箱(java)
package example6;import static java.lang.System.out;import static java.util.Arrays.sort;import java. ...
- Java基础(二) 基本类型数据类型、包装类及自动拆装箱
我们知道基本数据类型包括byte, short, int, long, float, double, char, boolean,对应的包装类分别是Byte, Short, Integer, Long ...
- Java的自动拆装箱与Integer的缓存机制
转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10832303.html 一:基本类型与包装类型 我们知道,Java有8大基本数据类型,4整2浮1符1 ...
随机推荐
- json_encode转化索引数组之后依然还是数组的问题
小坑问题:直接上图 解决方法:(json_encode加入第二个参数) JSON_FORCE_OBJECT
- 剑指offer系列——62.二叉搜索树的第k个结点
Q:给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. T: 中序遍历,递归: int count = 0; public ...
- js函数声明外面使用小括号括起来再接一个小括号的写法
js函数声明外面使用小括号括起来再接一个小括号的写法 (function(){})(); (function(){}()); !function(){}(); 总结ps:意思将函数声明变成,直接执行的 ...
- 「JSOI2013」哈利波特和死亡圣器
「JSOI2013」哈利波特和死亡圣器 传送门 首先二分,这没什么好说的. 然后就成了一个恒成立问题,就是说我们需要满足最坏情况下的需求. 那么显然在最坏情况下伏地魔是不会走回头路的 因为这显然是白给 ...
- Java入门笔记 06-常用类
介绍:本章将介绍Java的一些常用类,内容不完整,会在后续使用过程中逐步完善. 一. 字符串相关类: 1. String类介绍: |--- String类声明为final的,不能被继承: |--- 实 ...
- 探讨 Git 代码托管平台的若干问题
关于 Git 版本控制软件种类繁多,维基百科收录的最早的版本控制系统是 1972 年贝尔实验室开发的 Source Code Control System.1986 年 Concurrent Vers ...
- 用for循环写这段代码
之前用while循环写了一段代码,现在改为用for循环来写,代码如下: hongtao_age = 38 for i in range(5): guess_age = int(input(" ...
- Vue 项目中使用less
首先 你得有 完整的 Vue开发环境第一步 安装less 依赖 npm install less less-loader --save 第二步 修改webpack.config.js文件,配置load ...
- plus接口
//获取手机端本地文件路径 plus.io.resolveLocalFileSystemURL(url, success(e){ }, fail(e){ })
- shell 脚本基础
弱类型语言 bash 变量类型 本地变量 环境变量 局部变量 位置参数变量 特殊变量 运行 无执行权限 bash hello.sh 有执行权限 检查语法 bash -n user.sh 跟踪每一行的执 ...