Java 常用类

来源:互联网 发布:ubuntu版本的区别 编辑:程序博客网 时间:2024/06/16 04:40

Java 常用类

字符串相关类

String类:构造字符串对象

常量对象:字符串常量对象是用双引号括起的字符序列。

例如:”你好”、”12.97”、”boy”等。

字符串的字符使用Unicode字符编码,一个字符占两个字节

String类较常用构造方法:

String s1 = new String();

String s2 = new String(String original);

String s3 = new String(char[] a);

String s4 = new String(char[] a,int startIndex,int count)

字符串与基本数据的相互转化

字符串转换为基本数据类型

Integer包装类的publicstatic intparseInt(String s):可以将由“数字”字符组成的字符串转换为整型。

类似地,使用java.lang包中的Byte、Short、Long、Float、Double类调相应的类方法可以将由“数字”字符组成的字符串,转化为相应的基本数据类型。

基本数据类型转换为字符串

调用String类的publicString valueOf(int n)可将int型转换为字符串

相应的valueOf(byteb)、valueOf(longl)、valueOf(floatf)、valueOf(doubled)、valueOf(booleanb)可由参数的相应类到字符串的转换

字符串与字符数组

String类的构造方法:String(char[]) 和 String(char[],int offset,int length) 分别用字符数组中的全部字符和部分字符创建字符串对象

String类提供了将字符串存放到数组中的方法:

public void getChars(int srcBegin, int srcEnd, char[] dst,int dstBegin)

将字符串中的全部字符存放在一个字符数组中的方法:

public char[] toCharArray()

字符串与字节数组

String(byte[])用指定的字节数组构造一个字符串对象。String(byte[],int offset,int length) 用指定的字节数组的一部分,即从数组起始位置offset开始取length个字节构造一个字符串对象。

public byte[] getBytes() 方法使用平台默认的字符编码,将当前字符串转化为一个字节数组。

public byte[] getBytes(String charsetName) 使用参数指定字符编码,将当前字符串转化为一个字节数组。

StringBuffer类

  1. java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删。

  2. 很多方法与String相同,但StingBuffer是可变长度的。

  3. StringBuffer是一个容器。

  4. StringBuffer类有三个构造方法:

    StringBuffer()初始容量为16的字符串缓冲区

    StringBuffer(int size)构造指定容量的字符串缓冲区

    StringBuffer(String str)将内容初始化为指定字符串内容

StringBuilder类

StringBuilder和StringBuffer非常类似,均代表可变的字符序列,而且方法也一样

String:不可变字符序列

StringBuffer:可变字符序列、效率低、线程安全

StringBuilder(JDK1.5):可变字符序列、效率高、线程不安全

String使用陷阱:

string s=”a”; //创建了一个字符串

s=s+”b”; //实际上原来的”a”字符串对象已经丢弃了,现在又产生了一个字符串s+”b”(也就是”ab”)。如果多次执行这些改变串内容的操作,会导致大量副本字符串对象存留在内存中,降低效率。如果这样的操作放到循环中,会极大影响程序的性能。

日期类

1.java.lang.System类

System类提供的public static long currentTimeMillis()用来返回当前时间与1970年1月1日0时0分0秒之间以毫秒为单位的时间差。

此方法适于计算时间差。

计算世界时间的主要标准有:

​ UTC(Universal Time Coordinated)

​ GMT(Greenwich Mean Time)

​ ST(CentralStandard Time)

2.java.util.Date类

表示特定的瞬间,精确到毫秒

构造方法:

Date( )使用Date类的无参数构造方法创建的对象可以获取本地当前时间。

Date(long date)

常用方法:

getTime():返回自1970年 1 月 1 日 00:00:00GMT 以来此Date对象表示的毫秒数。

toString():把此Date对象转换为以下形式的String: dow mon dd hh:mm:ss zzz yyyy 其中: dow 是一周中的某一天(Sun,Mon, Tue, Wed, Thu, Fri, Sat),zzz是时间标准。

3.Date类的API不易于国际化,大部分被废弃了,java.text.SimpleDateFormat类是一个不与语言环境有关的方式来格式化和解析日期的具体类。

它允许进行格式化(日期->文本)、解析(文本->日期)

格式化:

SimpleDateFormat() :默认的模式和语言环境创建对象

public SimpleDateFormat(String pattern):该构造方法可以用参数pattern指定的格式创建一个对象,该对象调用:

public String format(Date date):方法格式化时间对象date

解析:

public Date parse(String source):从给定字符串的开始解析文本,以生成一个日期。

Math类

java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和返回值类型一般为double型。

BigInteger类

Integer类作为int的包装类,能存储的最大整型值为2^31-1,BigInteger类的数字范围较Integer类的数字范围要大得多,可以支持任意精度的整数。

BigDecimal类

一般的Float类和Double类可以用来做科学计算或工程计算,但在商业计算中,要求数字精度比较高,故用到java.math.BigDecimal类。BigDecimal类支持任何精度的定点数。

原创粉丝点击