封装类的由来:

为了将基本类型以对象行使存在,java对八个基本类型提供了引用类型,这八个引用类型称为基本类型的“包装类”。

八个基本类型对应的封装类:

int           --->    Integer

char        --->      Character

byte        --->      Byte

float        --->      Float

double    --->      Double

short       --->      Short

long        --->      Long

boolean  --->      Boolean

封装类的作用:

1.用于集合存储

2.String转基本数据类型间相互转换:

基本数据类型 -->String通过重载方法valueOf()即可

String转基本数据类型通过基本类型对应的封装类即可

 //int->String
String s = String.valueOf(a);
String ss = Integer.toString(a); //String->int
int i = Integer.parseInt(b); //1.Integer转换成int的方法,即Integer.intValue();
Integer ii = new Integer(10);
int k = ii.intValue(); //2.int转换成Integer
int c = 10;
Integer it = new Integer(c); //3. String转换成Integer
String str = "10";
Integer d = Integer.valueOf(str); //4.Integer转换成String
Integer e = new Integer(10);
String stre = e.toString();
//或者写成
String strwe = Integer.toString(e);

    ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

上面只是举了int&String的例子,其他的都差不多,Integer替换成Double啦~ Character啦~ 用法都差不多的

哦对了  项目中 String和Date的互相转换也是十分常见的,常用的方法有SimpleDateFormat,ThreadSafeSimpleDateFormat

但是推荐用ThreadSafeDateFormat,为什么呢?因为SimpleDateFormat不仅线程不安全,而且用这个方法会创建成吨的实例对象,占用大量的内存和 jvm空间,总之少用就对了。

下面展示下两种方法的实例:

SimpleDateFormat():

 public class DateUtil {

     public static  String formatDate(Date date)throws ParseException{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.format(date);
} public static Date parse(String strDate) throws ParseException{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
return sdf.parse(strDate);
}
}

ThreadSafeSimpleDateFormat():     此处是Date转字符串

 //首先在共通类写个format方法,假设这个类叫做AA
private static Pattern patternDate = Pattern.compile("[yMdHms]*"); public String formatDate(SimpleDateFormat sdfDate, Date date) {
String result = "";
if (date != null) {
result = sdfDate.format(date);
} else {
Matcher matcher = patternDate.matcher(sdfDate.toPattern());
result = matcher.replaceAll("-");
}
return result;
} //然后,调用就完事了
AA aa = new AA()
aa.formatDate(new ThreadSafeSimpleDateFormat("HHmm"), xxx.getDate());

其实SimpleDateFormat也有避免创建大量实例的写法,但是线程不安全,我就不写了(主要是懒)。

ps:同一个方法如果出现多个return,只以第一个为准,后面的都不管。

好了就这么多了,不过话说回来 我的随笔真是越来越短小了  ,最近鼻炎又找上我了,项目也忙起来了,回到家整个人都没了力气

哎其实都是借口,明晚一定要写一篇,突然想起来我的java连数据库那部分约等于不会,明晚研究一下,并把心得记录下来 。

下期见! 一给窝哩giaogiao   !

Java基础——封装类的更多相关文章

  1. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  2. 【JAVA面试题系列一】面试题总汇--JAVA基础部分

    JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...

  3. Java基础知识【上】(转载)

    http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...

  4. JAVA面试精选【Java基础第一部分】

    这个系列面试题主要目的是帮助你拿轻松到offer,同时还能开个好价钱.只要能够搞明白这个系列的绝大多数题目,在面试过程中,你就能轻轻松松的把面试官给忽悠了.对于那些正打算找工作JAVA软件开发工作的童 ...

  5. 学习android学习必备的java基础知识--四大内部类

    学习android必备的java基础知识--四大内部类 今天学习android课程,因为我的主专业是JAVA,但是兴趣班却有这其他专业的同学,学习android 需要具备一些java的基础知识,因此就 ...

  6. java基础常见面试题,这是一篇超长的随笔!!!

    1. Java基础部分....................................................... 4 1.一个".java"源文件中是否可以包括 ...

  7. Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  8. 毕向东—Java基础知识总结(超级经典)

    Java基础知识总结(超级经典) 写代码: 1,明确需求.我要做什么? 2,分析思路.我要怎么做?1,2,3. 3,确定步骤.每一个思路部分用到哪些语句,方法,和对象. 4,代码实现.用具体的java ...

  9. 转载:[Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    原文:http://www.cnblogs.com/wang-meng/p/5898837.html 一:继承.抽象类与接口区别.访问控制(private, public, protected,默认) ...

随机推荐

  1. luoguP4647 [IOI2007] sails 船帆

    https://www.luogu.org/problemnew/show/P4647 首先发现答案与顺序无关,令 $ x_i $ 表示高度为 $ i $ 的那一行帆的个数,第 $ i $ 行对答案的 ...

  2. 通过Jenkins进行提权的一个思路

    作者:欧根亲王号   所属团队:Arctic Shell Jenkins是一款由Java编写的开源的持续集成工具,其本身具有执行脚本的功能 在Jenkins的说明信息中列出我们可以使用任意Groovy ...

  3. Linux(Ubuntu)配置问题集

    Cannot set LC_CTYPE to default locale: No such file or directory 安装Ubuntu Server版本(不带桌面环境)时,如果安装时的语言 ...

  4. ps与grep组合命令使用

    管道命令 我们在做运维的时候,经常会使用这个命令ps -ef | grep nginx. ps -ef 表示显示所有进程的消息. | 是管道命令.通常需要借助管道命令”|”多个命令的组合,形式如下: ...

  5. 初始linux系统--ubuntu

    ubuntu操作系统  1. Linux系统组成 Linux内核软件程序用于实现CPU和内存分配进程调度设备驱动等核心操作,以面向硬件为主 外围程序面向用户为主,包括分析用户指令的解释器网络服务程序图 ...

  6. iOS开发~制作同时支持armv7,armv7s,arm64,i386,x86_64的静态库.a以及 FrameWork 的创建

    armv7,armv7s,arm64,i386,x86_64 详解 一.概要 平时项目开发中,可能使用第三方提供的静态库.a,如果.a提供方技术不成熟,使用的时候就会出现问题,例如: 在真机上编译报错 ...

  7. 2016级算法期末模拟练习赛-F.AlvinZH的青春记忆IV

    1086 AlvinZH的青春记忆IV 思路 难题,动态规划. 这是一道很有意思的题,因为它不仅卡了时间,也卡了空间,而且卡的很妙很迷. 光是理解题意已经有点难度,简化题意:两串数字序列,相等的数字定 ...

  8. initializer_list

    initializer_list是一种模板类型,定义initializer_list对象是,必须说明列表中所含元素的类型: initializer_list<Type> lst{a, b, ...

  9. JS框架设计之对象数组化一种子模块

    类数组对象是一个很好的存储结构,但是功能太弱了,为了享受纯数组的哪些便捷的方法,使用前可以做下转换,通常可以使用$.slice.call()方法做转换,但是旧版本的IE下的HTMLCollection ...

  10. 【文档】五、Mysql Binlog事件结构

    这个部分描述了事件被写入binlog或者delay log中的属性.所有的事件有相同的整体结构,也就是包含事件头和事件数据: +===================+ | event header ...