string类
基本信息
java.lang.String
java 使用 String 类创建一个字符串变量,字符串变量属于对象。
java把String类声明的final类,不能被继承。
String 字符串是常量,它们的值在创建后存入常量池,不再改变。只是引用变量str指向的其他的实例对象,但abc依旧存在。
常用方法
构造方法:
public String()
public String(char[] value)
求字符串长度:public int length()
求字符串指定位置字符:public char charAt(int index)
提取子串:
-
public String substring(int beginIndex)
-
substring(beginIndex,endIndex),截取从beginIndex到endIndex-1的子字符串。
-
(java中不规范的地方:substring的命名不规范。)
字符串比较:
-
public boolean equals("hello")
-
public boolean equalsIgnoreCase("hello");
字符串连接:public String concat(String str)
字符串中单个字符查找:public int indexOf(String str)
字符串中字符大小写转换:
-
public String toLowerCase()
-
public String toUpperCase()
字符串中字符的替换:public String repalce(char old,char new)
其他类方法:
截取字符串两端的空格,对中间不做处理。String trim()
是否包含 hello 字符串:contains("hello")
将字符串按照 “,” 分隔
字符串与基本类型的转换
-
字符串转基本类型:parseInt()
-
基本类型转字符串:String valueOf(int i),String valueOf(char data[])
字符串的拼接
-
当左右两个量其中有一个为String类型时,用“+”
-
当两个量都为String类型且值不为null时,可以用concat。
String c= a.concat(b);
Object类:
-
介绍:Object 是一个特殊的类,所有类的父类。
-
clone() :
-
浅拷贝对于基本类型直接拷贝,对于引用类型只是拷贝引用。也就是说不会创建一个新的对象。
-
浅拷贝的实现,该类必须实现 Cloneable 接口,并且重写 Clone 方法。否则会报 CloneNotSupportedException。
-
深拷贝就是拷贝一个真正的对象。
-
深拷贝的实现,就是将浅拷贝中的引用对象拿出来,也使其实现 Cloneable 接口,并且重写 Clone 方法。
-
-
toString()
-
getClass()
-
介绍:通过反射机制获取运行时类的引用。如果属于同一个类,则返回的是同一个运行时类的引用。
-
通常使用:getClass().getName();
-
-
finalize()
-
工作原理是:一旦垃圾回收器准备好释放对象占用的存储空间,将首先调用其finalize()方法。
-
-
equals()
-
介绍:用来判断调用 equals 的对象和形参 obj 所引用的对象是否是同一对象。
-
String 类已经重写,比较的是字符串内容是否一致。
-
-
hashCode()
-
常与 equals() 方法一起重写。
-
比对两个对象是否同一个的时候,通常先调用hashCode方法,如果
-
-
wait()
-
notify()
-
notifyAll()
math类
package com.james.math;
import static java.lang.Math.*;
/***
* java的静态导入
* 可以直接导入对应类中的所有的静态属性和静态方法
* 在使用静态属性或者静态方法时,无需再写类本身而直接调用
*
* @author james
*
*/
public class TestMath {
public static void main(String[] args) {
System.out.println(PI);
System.out.println(E);
System.out.println(random());
System.out.println(round(11.5));
System.out.println(round(-11.5));
System.out.println(abs(-11.5));
System.out.println(abs(11.5));
System.out.println(ceil(11.01));
System.out.println(floor(11.99));
System.out.println(sqrt(9));
}
}
system类
System.currentTimeMillis()可以获取一个long类型的表示当前的系统时间
实现拷贝功能:
package com.james.system;
public class TestSystem03 {
public static void main(String[] args) {
int[] arr1 = {1, 2, 3, 6, 11, 99, 4};
int[] arr2 = new int[10];
// 实现数组的拷贝功能
// System.arraycopy( Object src, int srcPos,
// Object dest, int destPos,
// int length)
// 包含五个参数:
// src源数组
// srcPos源数组的起始位置
// dest目标数组
// destPos目标数组的起始位置
// length拷贝数据的长度
System.arraycopy(arr1, 0, arr2, 1, 60);
for (int i : arr2) {
System.out.println(i);
}
}
}