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. js学习篇--数组按升序降序排列

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. hibernate学习四(关系映射一对一与组件映射)

    一.关系映射简介 在数据库中,表与表的关系,仅有外键.但使用hibernate后,为面向对象的编程,对象与对象的关系多样化:如 一对一,一对多,多对多,并具有单向和双向之分. 开始练习前,复制上一次项 ...

  3. php、前端开发(网站建设)环境搭建

    php集成开发环境wampserver,是一款免费开源的软件,下载地址http://www.wampserver.com,由于是国外的网站,打开速度慢,根据自己的电脑选择32位/64位的系统下载.

  4. 用C#创建Windows服务(Windows Services)

    用C#创建Windows服务(Windows Services) 学习:  第一步:创建服务框架 创建一个新的 Windows 服务项目,可以从Visual C# 工程中选取 Windows 服务(W ...

  5. Oracle EBS R12的启停脚本

    以下脚本用root用户登录执行: 一.DB启停使用EBS提供的脚本ebs_start.shsu - oraprod -c "/d01/oracle/PROD/db/tech_st/10.2. ...

  6. VB编程的键盘控制

    在VB中,很多控件都提供了键盘输入功能(如文本框.组合框等),但它们对键盘的处理较简单,遇到复杂一点的要求即无能为力. 因而VB提供了KeyPress.KeyUp.KeyDown三种键盘事件,当用户按 ...

  7. Linux学习之十--.Net Core环境搭建以及Nginx的搭建

    一.Centos7下.Net Core 环境安装: 链接:https://www.microsoft.com/net/core#linuxcentos 按照步骤来: yum install libun ...

  8. 请不要重复犯我在学习Python和Linux系统上的错误

    本人已经在运维行业工作了将近十年,我最早接触Linux是在大二的样子,那时候只追求易懂,所以就选择了Ubuntu作为学习.使用的对象,它简单.易用.好操作.界面绚丽,对于想接触Linux的新手来说是非 ...

  9. 剑指Offer 数组中只出现一次的数字

    题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字.   思路: 因为有2个数字只出现了一次,而其他的数字都是2次,可以通过异或运算,得到最后这2个只 ...

  10. Thread Safety线程安全

    Thread Safe(线程安全)和None Thread Safe(NTS,非线程安全)之分 如果disabled就选择nts(php_stomp-1.0.9-5.5-nts-vc11-x86.zi ...