枚举

枚举是由一组固定的常量组成的类型,使用关键字 enum 定义

包装类

8种包装类 ByteShortIntegerLongFloatDoubleBooleanCharacter

Math

本数学运算和几何运算的方法,此类中的方法都是静态、常量的,没有子类

Math.random( ) [0.0,1.0) 随机数(double)

Math.abs( ) 求绝对值(double float int long)

Math.round 四舍五入计算(double float)

Math.max( , ) Math.min( , ) 求两个数中的最大/最小值(double float int long)

(Math.random*(max-min)+min)




String类

String 位于java.lang包中,该包是被自动导入进所有程序中 . 对象 , 引用数据类型 , 默认为 null Stringfinal 类型不可更改,不能被继承 基本类型与 String 结合都会转换为 String 类型

String赋值方式

1.直接赋值

String str = "";




2.使用 new 关键字赋值

String str = new String ("");




两种赋值方式的区别:

1.直接定义的String ""储存在常量存储区中的字符串常量池中, new String("") 是存储在堆中

2.常量池中相同的字符串只有一个,但是 new String(), 每new一个对象就会在堆中新建一个对象

3.String a = “”在编译阶段就会在内存中创建, String a = new String("")是在运行时才会在堆中创建对象

4.直接赋值只开辟一块堆内存空间,并且会自动入池,不会产生垃圾,构造方法会开辟两块堆内存空间,其中一块堆内存会变成垃圾被系统回收,在开发的过程中不会采用构造方法进行字符串的实例化

常量池(constant pool) : 在编译期被确定,并被保存在已编译的 .class 文件中的一些数据.它包括了关于类、方法、接口等中的常量,也包括字符串常量.字符串常量池在 jdk1.6 及之前在方法区中,在 jdk1.7 及以后放在了堆中,编译阶段确定的字符串才会被放到字符串常量池中

String.intern() 扩充常量池的方法.当一个String实例str调用intern()方法时,Java查找常量池中是否有相同Unicode的字符串常量,如果有,则返回其的引用,如果没有,则在常量池中增加一个Unicode等于str的字符串并返回它的引用

length()返回此字符串的长度,长度等于字符串中Unicode 代码单元的数量

equals()比较两字符串的Unicode序列是否相当.如果相等返回true

equalsIgnoreCase() 忽略大小写比较两字符串的Unicode序列是否相当

    String str1 = "Abc";
    String str2 = "abc";
    System.out.println(str1.equalsIgnoreCase(str2));
    //输出结果为true




toLowerCase() 使用默认语言环境的规则将这里的所有字符转换为小写(把字符串中的大写字母转换为小写字母)

toUpperCase()使用默认语言环境的规则将这里的所有字符转换为大写(把字符串中的小写字母转换为大写字母)

    String str1 = "Abc";
    String str2 = "abc";
    str1 = str1.toLowerCase();
    str2 = str2.toLowerCase();
    System.out.println(str1.equals(str2));
    //输出结果为true




concat() 将指定的字符串连接到此字符串的末尾(拼接字符串 字符串1.concat(字符串2)拼接后的结果:字符串1字符串2)

    String str1 = "abc";
    String str2 = "123";
    String result1 = str1 + str2;
    String result2 = str1.concat(str2);
    System.out.println(result1+"\n"+result2);  
    //输出结果都为abc123




indexOf(int ch) 返回此字符串中第一次出现指定字符的索引(判断字符串中是否包含子字符/字符串 .从前到后/从0开始,找到返回对应的下标(下标从0开始)找不到就返回-1.所以判断谁在不在字符串中就判断indexOf()返回结构是否为-1)

indexOf(int ch, int fromIndex)返回此字符串中第一次出现指定字符的索引,从指定索引开始搜索(判断字符串中是否包含子字符/字符串 .找最后一个出现的子字符串的下标)

lastIndexOf(int ch)返回此字符串中最后一次出现指定字符的索引(判断字符串中是否包含子字符/字符串.找最后一个出现的子字符串的下标)

substring(int beginIndex)(截取下标从下标1截取到字符串末尾)

substring(int beginIndex,int endIndex) 返回作为此字符串的子字符串的字符串.子字符串从指定开始beginIndex并延伸到 index 处的字符endIndex - 1.因此子串的长度为endIndex-beginIndex (下标从下标1截取到下标2的前一个 取不到下标2)

trim() 返回一个字符串,其值为该字符串,删除了所有前导和尾随空格,其中空格定义为代码点小于或等于 'U+0020'(空格字符)的任何字符(去掉字符串左右多余的空格)

replaceAll()方法删除所有的空格

split() 围绕给定正则表达式的匹配拆分此字符串(按照指定的分隔符把字符串分隔成数组)

参考文章 : JAVA中String对象详解 JAVA中String对象详解

StrubgBuffer

还可以使用StringBuffer来存储字符串.StringBuffer类是比String类更高效存储字符串的引用数据类型.尤其是在对字符串的连接操作上.在使用是需要声明并且初始化,不需要进行导包处理

System
Date
Calender
SimpliDateFormat
包装类

Empty spaces,fill the pages.