装箱和拆箱Auto-boxing/unboxing
装箱:将基本数据类型自动转为包装类型
Integer aa = Integer.valueOf(a);
Integer aa1 = new Integer(a);
int a = 10;
Integer aa = a ;//自动装箱
Integer b = 10;//自动装箱 直接把基本数据类型赋值给包装类型
底层默认调用valueOf(a);
拆箱
将包装类型转为基本类型,底层用的是Integer的intValue方法
int a = 12;
Integer b = Integer.valueOf(a); //装箱
int c = b.intValue();//拆箱
String类
java.lang.String代表字符串
Java中凡是" "括起来的 都是String类中的实例(对象)
字符串值不可改变,一旦字符串对象被创建,值就不能改变了
底层存储字符串内容的数组,是被final修饰的,必须在对象创建之前由构造方法对其赋值
java中字符串的两种创建方式:
方式1:
String s1 =“abc”;
String s2 = “abc”;
在第一次创建s1变量时,会去内存中有一个叫字符串常量池的空间检索,有没有此内容的一个宁符串对象,如果没有,就会在字符串常量池中创建一个字符串对象,把对象的地址赋给s1.在第二次创建s2变量时,会去字符串常量池中查找,如果有,直接将之前创建的字符串对象赋值给s2.
一旦出现要创建的字符串对象内容一致,返回拿到的是同一个字符串对象的地址
方式二:
String s1 = new String(“abc”);
无论是否存在相同内容的字符串对象,都会创建一个新的字符串对象
String构造方法:
● 构造方法
public String()
public String(String str)
public String(byte[] bytes)
public String(char[] value)
● 判断功能
boolean equals(Object obj)
boolean equalsIgnoreCase(String str)
boolean contains(String str)
boolean isEmpty()//空格也不属于空串
boolean startsWith(String prefix)
boolean endsWith(String suffix)
●获取功能
int length()
char charAt(int index)
int indexOf(String str)
int indexOf(String str,int fromIndex)
String substring(int start)
String substring(int start,int end)
● 转换功能
byte[] getBytes()//
char[] toCharArray()
static String valueOf(char[] chs)
String toLowerCase()//将字符串变成小写
String toUpperCase()//将字符串变成大写
String concat(String str)//将指定字符串拼接到字符串末尾,返回一个新的字符串
Stirng[] split(分割符);//正则表达式
String s4 = "ab;cde;fg";
string [] strings = s4.split( regex:“;"); //正则表达式
System.out.println(Arrays.toString(strings));//[ab,cde,fg]
● 替换功能
String replace(char old,char new)//把新的换到旧的位置
String replace(String old,String new)
replaceAll(String regex, String replacement)//替换所有指定的元素
replaceFirst(String regex, String replacement)
● 去除字符串两空格
String trim()//只能去除左右俩边的,剩下的可以用替换功能
System.out.println(s.replace(" ",""));//将空格去掉
Math类
● java.lang.Math提供了一系列静态方法用于科学计算;其方法的参数和
返回值类型一般为double型。
abs 绝对值
sqrt 平方根
pow(double a, double b) a的b次幂
max(double a, double b)
min(double a, double b)
random() 返回 0.0 到 1.0 的随机数
long round(double a) double型的数据a转换为long型(四舍五入)
Random类
● Random类概述
此类用于产生随机数
● 构造方法
public Random()
●成员方法
public int nextInt()
public int nextInt(int n)