Java学习笔记(三)内部封装类

来源:互联网 发布:电气软件 编辑:程序博客网 时间:2024/06/17 12:02

1、Character类
这个类内部包装了一个数据类型char的数据

有两种创建Character的方式,一种是new Character(‘a’);
另一种是Character ch = ‘a’;

import java.lang.*;public class Characters {    public static void main(String args[]){        Character ch = new Character('a');        Character chs = 'c';        System.out.println(chs);    }}

Character类有很多的方法提供我们使用:
isLetter()
是否是一个字母
isDigit()
是否是一个数字字符
isWhitespace()
是否是一个空格
isUpperCase()
是否是大写字母
isLowerCase()
是否是小写字母
toUpperCase()
指定字母的大写形式
toLowerCase()
指定字母的小写形式
toString()
返回字符的字符串形式,字符串的长度仅为1

2、String类

String 类有 11 种构造方法,这些方法提供不同的参数来初始化字符串,比如提供一个字符数组参数。

String a = “hello world”;这是最常见的字符串对象的申明方式。

字符串不是八种内置数据类型,它的申明本身就是一个字符串对象,可以直接调用String对象定义的方法。

特别注意:
String 类是不可改变的解析,例如:
String s = “Google”;
System.out.println(“s = ” + s);

s = “Runoob”;
System.out.println(“s = ” + s);
输出结果为:
Google
Runoob
从结果上看是改变了,但为什么门说String对象是不可变的呢?
原因在于实例中的 s 只是一个 String 对象的引用,并不是对象本身,当执行 s = “Runoob”; 创建了一个新的对象 “Runoob”,而原来的 “Google” 还存在于内存中

3、StringBuffer和StringBuilder

由于String类的字符串是不可改变的。所以出现了能够改变的字符串类StringBuffer和StringBuilder。

public class StringBufferTest {    public static void main(String args[]){        StringBuffer a = new StringBuffer("我心中的的好公司:");        a.append("北京图为先科技有限公司!!");        System.out.println(a);        a.reverse();        System.out.println(a);        a.replace(0, 0, "123");        System.out.println(a);    }}

4、Java数组

申明数组变量的两种方式;

String[] a;
String a[];
两种方式都是申明了一个名字为a的字符串数组。

在java中,数组时用{1,2,3,4}表示的,而一般语言是[1,2,3,4]

import java.util.Arrays;public class ArrayTest {    int a[] = {5,4,3,6,9};    public void printArray(int[] arr){        for(int a:arr){            System.out.println(a);        }    }    public static void main(String a[]){        ArrayTest ss = new ArrayTest();        Arrays.sort(ss.a);        ss.printArray(ss.a);    }}

Arrays 类

public static int binarySearch(Object[] a, Object key)
用二分查找算法在给定数组中搜索给定值的对象(Byte,Int,double等)。数组在调用前必须排序好的。如果查找值包含在数组中,则返回搜索键的索引;否则返回 (-(插入点) - 1)。

public static boolean equals(long[] a, long[] a2)
如果两个指定的 long 型数组彼此相等,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。

public static void fill(int[] a, int val)
将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。

public static void sort(Object[] a)
对指定对象数组根据其元素的自然顺序进行升序排列。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。

5、日期和时间,Date()对象

import java.util.Date;public class DateTest {    public static void main(String args[]){        Date now = new Date();        System.out.println(now.toString());        System.out.println(now.after(new Date(111)));        System.out.println(now.compareTo(new Date(1111111111111111L)));    }}
原创粉丝点击