Java 中基本类型和字符串之间的转换以及SimpleDateFormat 类笔记

时间:2021-08-20 17:50:54

(一)在程序开发中,经常需要在基本数据类型和字符串之间进行转换。

其中,基本类型转换为字符串有三种方法:

1. 使用包装类的 toString() 方法

例子:

double m = 78.5;

String str1 = String.valueOf(m)  ;     

2. 使用String类的 valueOf() 方法

例子:

double m = 78.5;
//将基本类型转换为字符串
String str1 = String.valueOf(m)  ;      

3. 用一个空字符串加上基本类型,得到的就是基本类型数据对应的字符串

例子:

double m = 78.5;

String str2=m+"";


将字符串转换成基本类型有两种方法:

1. 调用包装类的 parseXxx 静态方法

String str = "180.20";

Double b=Double.parseDouble(str);

2. 调用包装类的 valueOf() 方法转换为基本类型的包装类,会自动拆箱

String str = "180.20";

Double c=Double.valueOf(str);


笔记:

每一个基本类型,都对应一个包装类
包装类都在 Java.lang包中
包装类提供了在不同类型间进行转换的方法
每一个基本类都有对应的包装类,每个包装类都有许多方法(基本类是没有方法的)。因此需要引入包装类

关于Date对象
 使用 Date 类时需要导入 java.util 包,使用 SimpleDateFormat 时需要导入 java.text 包
Date a=new Date();
System.out.println(a);


输出结果:
Fri Feb 24 16:05:59 CST 2017

java.text 包中的 SimpleDateFormat 类大显身手的时候了!!可以使用 SimpleDateFormat 来对日期时间进行格式化,如可以将日期转换为指定格式的文本,也可将文本转换为日期。
 
1. 使用 format() 方法将日期转换为指定格式的文本 

import java.text.SimpleDateFormat;import java.util.Date;

Date a=new Date();SimpleDateFormat  b=new SimpleDateFormat ("yyyy-MM-dd HH:ss:mm");String c=b.format(a);System.out.println(c);

2.使用 parse() 方法将文本转换为日期

@Testpublic void test3(){Date a=new Date();SimpleDateFormat  b=new SimpleDateFormat ("yyyy-MM-dd HH:ss:mm");String c=b.format(a);try {Date d=b.parse(c);System.out.println("d:"+d);} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(c);}

运行结果:

d:Fri Feb 24 16:14:40 CST 20172017-02-24 16:40:14

import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public class HelloWorld {        public static void main(String[] args) throws ParseException {        // 使用format()方法将日期转换为指定格式的文本 SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MM/dd HH:mm");SimpleDateFormat sdf3 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");        // 创建Date对象,表示当前时间        Date now=new Date();                // 调用format()方法,将日期转换为字符串并输出System.out.println(sdf1.format(now)); System.out.println(sdf2.format(now)); System.out.println(sdf3.format(now));// 使用parse()方法将文本转换为日期 String d = "2014-6-1 21:05:36";SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");                 // 调用parse()方法,将字符串转换为日期Date date =sdf.parse(d);         System.out.println(date);}}

运行结果:

2017年02月24日 06时20分13秒
2017/02/24 06:20
2017-02-24 06:20:13
Sun Jun 01 21:05:36 UTC 2014