Java基础-常用工具类(一)

object类

Object 类是所有类的的父类,如果一个类没有明确使用EXPENTS关键字明确标识继承另外一个类,那么这个类默认继承object类,oject类中的方法适合所有子类

1)toString 方法 可以自动生成

在Object类里面定义toString ()方法的时候返回的对象的哈希code码(对象地址字符串) 可以通过重写toString ()方法表示出对象的属性

2)equal()方法 可以自动生成

比较的是对象的应用是否指向同一块内存地址

一般情况下比较两个对象时比较他的值是否一致,所以要进行重写

Character类

在实际开发过程中,我们经常会遇到需要使用对象,而不是内置数据类型的情况。为了解决这个问题,Java语言为内置数据类型char提供了包装类Character类。

Character ch = new Character('a');

例子:

// 原始字符 'a' 装箱到 Character 对象 ch 中
Character ch = 'a';
// 原始字符 'x' 用 test 方法装箱
// 返回拆箱的值到 'c'
char c = test('x');
Character类的方法:

String类

Java 提供了 String 类来创建和操作字符串。

创建字符串

String greeting = "菜鸟教程";

字符串的不变性

1 变量字符串的修改是将变量指向了新的字符串对象

2 字符串在变量中创建不可改变,如果需要可以改变的字符串,需要使用StringBuffer或者

StringBuilder

3每次new 就是产生一个新的对象,即使两个字符串的内容相同

4 字符串的内容相同使用equals()方法

连接字符串

string1.concat(string2);String 类提供了连接两个字符串的方法

"Hello," + " runoob" + "!" 使用'+'操作符来连接字符串

字符串的常用方法

1字符串str中的字符的索引从0开始,范围为0到str.length()-1

2 使用indexof进行字符串或字符串查找的时候,如果匹配返回索引,如果没有匹配结果返回-1

3 使用substing(beginIndex,endIndex),包括beginIndex字符,不包括endIndex字符

4 == (基本数据类型比较的是他们的值)判断的是内存中的首字母是否相同,即判断是否为同一对象,equals比较数组内容否一致

StringBuilder 类和StringBuffer

当对字符串进行修改的时候,需要使用 StringBuffer 和 StringBuilder 类。

和 String 类不同的是,StringBuffer 和 StringBuilder 类的对象能够被多次的修改,并且不产生新的未使用对象。

StringBuilder 类在 Java 5 中被提出,它和 StringBuffer 之间的最大不同在于 StringBuilder 的方法不是线程安全的(不能同步访问)。

用法:

StringBuiledr str1=new StringBuilder();
StringBuilder MyStringBuilder = new StringBuilder("Hello World!");
MyStringBuilder.Append(" What a beautiful day.");

Number & Math 类

常用的一些方法:

例子:

Randow  randow=new Randow()
K=randow.nextInt(100);

插入100以内的随机数

Arrays 类

Java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。

具有以下功能:

给数组赋值:通过 fill 方法。

对数组排序:通过 sort 方法,按升序。

比较数组:通过 equals 方法比较数组中元素值是否相等。

查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。

Date日期类

java.util 包提供了 Date 类来封装当前的日期和时间。 Date 类提供两个构造函数来实例化 Date 对象。

第一个构造函数使用当前日期和时间来初始化对象。

Date( )

第二个构造函数接收一个参数,该参数是从1970年1月1日起的毫秒数。

Date(long millisec)

Date对象创建以后,可以调用下面的方法。

例子:

import java.util.Date;
public class DateDemo {
public static void main(String args[]) {
// 初始化 Date 对象
Date date = new Date(); // 使用 toString() 函数显示日期时间
System.out.println(date.toString());
}
}

日期比较

Java使用以下三种方法来比较两个日期:

使用 getTime() 方法获取两个日期(自1970年1月1日经历的毫秒数值),然后比较这两个值。

使用方法 before(),after() 和 equals()。例如,一个月的12号比18号早,则 new Date(99, 2, 12).before(new Date (99, 2, 18)) 返回true。

使用 compareTo() 方法,它是由 Comparable 接口定义的,Date 类实现了这个接口。

SimpleDateFormat 格式化日期

添加包 java.text.SimpleDateFormat

首先使用默认的构造方法创建Date对象

创建字符串对象,指定字符串的日期格式

SimpleDareFormat df= new SimpleFormat();

使用format()方法将日期转换为指定格式的文本

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

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date now=new Date();
System.out.println(sdf.format(now));

例子:

//如果希望得到YYYYMMDD的格式
SimpleDateFormat sy1=new SimpleDateFormat("yyyyMMDD");
String dateFormat=sy1.format(date);
//如果希望分开得到年,月,日
SimpleDateFormat sy=new SimpleDateFormat("yyyy");
SimpleDateFormat sm=new SimpleDateFormat("MM");
SimpleDateFormat sd=new SimpleDateFormat("dd");
String syear=sy.format(date);
String smon=sm.format(date);
String sday=sd.format(date);

printf格式化日期

printf 方法可以很轻松地格式化时间和日期。使用两个字母格式,它以 %t 开头并且以下面表格中的一个字母结尾。

例子:

//c的使用

System.out.printf("全部日期和时间信息:%tc%n",date);

//f的使用

System.out.printf("年-月-日格式:%tF%n",date);

//d的使用

System.out.printf("月/日/年格式:%tD%n",date);

结果:

全部日期和时间信息:星期一 九月 10 10:43:36 CST 2012

年-月-日格式:2012-09-10

月/日/年格式:09/10/12

定义日期格式的转换符可以使日期通过指定的转换符生成新字符串。

String str=String.format(Locale.US,"英文月份简称:%tb",date);

System.out.println(str);

System.out.printf("本地月份简称:%tb%n",date);

英文月份简称:May

本地月份简称:五月

calendar类

作用:设置和获取日期数据的特定部分,在日期的这些部分加上或者减去值

Java.util.Calender类

首先创建calender对象

calendar c= calendar.getInstance()

//c1.set(2009, 6 - 1, 12);可以设置值

将Calender对象转换为Date对象

Date date=c.getTime();

之后再创建SimpleDateFormat对象,调用format()方法就可以输出日期字符串

上一篇:NUGet的诞生与使用


下一篇:动手学习TCP:客户端状态变迁