1.StringBuffer

  a.StringBuffer 与 String:①StringBuffer是一个全新的类型,与String没有继承关系

               ②StringBuffer的出现是为了解决String内容不可变的问题,它是可变的

               ③StringBuffer绝不享受String的特殊语法(什么“+”号拼接、直接赋值String常量)

StringBuffer sb = new StringBuffer("hello");

  b.常用方法:

StringBuffer sb2 = sb.append("world");        //StringBuffer在字符串末尾做拼接

sb2 = sb2.insert(5, " ");        //StringBuffer在字符串对应位置做拼接    

    注:它的方法完全没有String丰富,大部分方法都是和拼接或删除有关,需要传入位置下标

2.StringBuilder

  StringBuilder 是 StringBuffer 的改进版,区别在于:

    ①StringBuilder 性能比 StringBuffer 高

    ②但是,StringBuilder 线程不安全(单线程),而  StringBuffer 线程很安全

3.包装类

  a.分类:Integer、Character、Byte、Short、Long、Float、Double、Boolean

  b.作用:①丰富了基本数据类型只能存放值的问题,还可以提供大量的方法或常量

      ②包装类充当了基本数据类型和引用数据类型的桥梁

  c.应用:基本数据类、包装类型和String类型三者的任意转换

4.基本数据类型——包装类

  a.基本 转 包装:

int a = 100;
Integer in = new Integer(a); //标准做法
in = 250; //★自动封箱---JDK1.5以后提供

  b.包装 转 基本:

Integer in = 300;
int b = in.intValue(); //标准做法
b = in; //★自动拆箱---JDK1.5以后提供

5.包装类——String

  a.String 转 包装:

String str = "125";
Integer in = new Integer(str);

  b.包装 转 String:

Integer in = 325;
String str = in.toString(); //标准做法
String str1 = in + ""; //其实本质还是在调用in的toString方法

6.String——基本

  a.String 转 基本:

String str = "275";
int i = Integer.parseInt(str); //★将字符串String转换为基本数据类型

  b.基本 转 String:

int i = 78;
String str = Integer.toString(i);
String str1 = i + "";

7.Date 类 —— java.util

  a.作用:Date 类用来封装了时间日期

long now2 = System.currentTimeMillis();        //可以直接通过这个方法获得当前时间的毫秒数

  b.局限性:由于Date这个类型出现的较早,经历了时间原点的变迁,以及JDK版本的变迁,所以有很多的过时方法

  c.目前的使用场景:①获取程序运行的当前时间还是用Date最方便

           ②SimpleDateFormat类可以自定义格式化输出日期时间字符串

           ③Date在各版本中都可以使用,因而成为表示时间日期的首选

Date now = new Date();        //获取当前时间的Date对象

now = new Date(0L);        //根据传入的long类型毫秒数表示时间

SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 a hh:mm:ss:SSS  E");

String msg = sdf.format(now);

  d.缺点:①根据指定的年月日时分秒来设置对象的值----方法已经都过时了

      ②难于取出时间日期的一部分(比如年、月)进行单独的时间运算。

  e.解决:使用Calendar这个替代类进行操作

8.Calendar类——日历类

  a.由于Calendar是抽象类,可通过.getInstance()直接获取子类对象

Calendar cal = Calendar.getInstance();        //使用设计模式帮助我们直接获取到Calendar的子类对象,里面对应的就是当前日期时间

  b.Calendar的set/get方法

cal.set(1992,2,14);
cal.set(cal.YEAR,1992); cal.get(cal.YEAR);

    注:java中,月份是从0开始的,星期是从周日开始的,因此使用时要进行-1操作

  c.Calendar ---> Date

Date birthday = cal.getTime();        //方法一
Date birthday = new Date(cal.getTimeInMillis()); //方法二 String dayOfWeek = new SimpleDateFormat("E").format(birthday); //Date 与 SimpleDateFormat 的共同使用

9.Properties

  a.特点:①集合类:Properties是一个集合类,以键值对的方式存放数据;同时兼具可以操作属性文件(一种特殊格式的文本文件)

      ②操作文件:Properties 同时兼具可以操作属性文件(一种特殊格式的文本文件)

  b.申明:首先产生Properties集合容器

Properties props = new Properties();

  c.增加:①调用setProperty方法放入元素,每个元素都是一对键值对

      ②第一个参数是键,要求不能重复

      ③第二个参数是值

props.setProperty("J134001", "chenGuo");
props.setProperty("J134002", "张鹏");
props.setProperty("J134003", "张凯");

  d.修改:如果出现放入重复值的情况,相当于修改而不是新增

props.setProperty("J134003", "罗一修");

  e.取/查:通过键取集合中的值,如果键不存在则返回null

String name = props.getProperty("J134001");
System.out.println(name);

  f.删除:根据键删除整个键值对

props.remove("J134002");

  g.长度:获得容器中的元素个数

int size = props.size();

 

 

10.★Properties 操作文件★

  a.Properties操作的文件必须是固定格式的文本文件---属性文件---将是工作中使用率排名第二的配置文件

  b.看文件:.store方法

props.store(new FileOutputStream("file/student.properties"), "");

  c.读文件:.load方法

Properties newProps = new Properties();
newProps.load(new FileInputStream("file/student.properties"));

Java 之 常用类(二)的更多相关文章

  1. Java API 常用类(一)

    Java API 常用类 super类详解 "super"关键字代表父类对象.通过使用super关键字,可以访问父类的属性或方法,也可以在子类构造方法中调用父类的构造方法,以便初始 ...

  2. Java的URL类(二)

    转:https://www.cnblogs.com/brokencolor/p/8575440.html Java的URL类(二) 实例: Java 通过HttpURLConnection Post方 ...

  3. Java之常用类及方法

    下面我们介绍Java类库所提供的常用类及类的常用方法 一.java.lang.String 1. String类常用的构造函数 public String(String original) 使用串对象 ...

  4. java:常用类(包装类,equals和==的比较,Date,java.lang.String中常用方法,枚举enum)

    *包装类: 将基本类型封装成类,其中包含属性和方法以方便对象操作. *byte---->Byte *short--->Short *long--->Long *float---> ...

  5. Java基础常用类深度解析(包含常见排序算法)

    目录 一.工具类 1.1.工具类的设计 1.1.1.公共静态方法 1.2.单例模式 二.包装类 2.1.基本类型的包装类 2.1.1.Integer 2.1.1.1.Integer >> ...

  6. java基础---常用类

    一.字符串类String String:字符串,使用一对""引起来表示,字符串常量池在方法区中 public final class String implements java. ...

  7. Java中常用类(包装类扩展知识)

    Java常用类有哪些? 八大基本数据类型的包装类 包装类均位于java.lang包中,包装类和基本数据类型的对应关系如下表: 基本数据类型 包装类 byte Byte boolean Boolean ...

  8. [趣学程序]java的常用类之String

    java基础之常用类 String类 String表示字符串,所谓字符串,就是一连串的字符,是java中最常用的类之一. String是不可变类,一旦String对象被创建,包含在对象中的字符序列(内 ...

  9. Java集合常用类特点整理

    集合的结构如下图所示: 集合的两个顶级接口分别为:Collection和Map Collection下有两个比较常用的接口分别是List(列表)和Set(集),其中List可以存储重复元素,元素是有序 ...

  10. JAVA基础--常用类 String,StringBuffer, 基础数据类型包装类, Math类, Enum类

    字符串相关类: String, StringBuffer String类为不可变的字符序列 String s1="hello"; String s2="hello&quo ...

随机推荐

  1. 基于ASP.NET MVC(C#)和Quartz.Net组件实现的定时执行任务调度

    http://www.cnblogs.com/bobositlife/p/aspnet-mvc-csharp-quartz-net-timer-task-scheduler.html 在之前的文章&l ...

  2. 用Canvas实现动画效果

    1.清除Canvas的内容 clearRect(x,y,width,height)函数用于清除图像中指定矩形区域的内容 <!doctype html> <html> <h ...

  3. Max double slice sum 的解法

    1. 上题目: Task description A non-empty zero-indexed array A consisting of N integers is given. A tripl ...

  4. hdu 4946 2014 Multi-University Training Contest 8

    Area of Mushroom Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) ...

  5. synchronized使用说明

    好久没有更新博客了,今天试着用简单的语言把synchronized的使用说清楚. synchronized是什么? synchronized是用来保证在多线程环境下代码同步执行的可重入的互斥锁.所谓互 ...

  6. ur c题练习

    ur的c果然sxbk啊 ur5:“三个莫比乌斯反演掷地有声"——摘自v(c)f(z)k(y)语录,无删改 ur2:有根树分治裸题,复杂度玄学$O(n\sqrt{n})$. 首先,转化为统计k ...

  7. 手机站使图片高度统一jq代码

    <script> function showImg(){ $(".honor_i_c img").each(function(index, element) { var ...

  8. Android app AOP添加埋点技术总结

    目标:通过面向切面编程来实现对源代码无侵入的埋点.     方式 能力 缺点 学习曲线   XPosed 运行期hook 能hook自己应用进程的方法: 能hook别的应用的方法: 能hook系统方法 ...

  9. 浅谈CPU和GPU的区别

    导读: CPU和GPU之所以大不相同,是由于其设计目标的不同,它们分别针对了两种不同的应用场景.CPU需要很强的通用性来处理各种不同的数据类型,而GPU面对的则是类型高度统一的.相互无依赖的大规模数据 ...

  10. ffmpeg+x264 Windows MSVC 静态编译

    尝试ubuntu和win下mingw编译版本,但都在Vistual Studio链接时因为依赖 libgcc.a, libmingw.a, libmingwex.a 会与mscrt 有符号冲突. 最后 ...