java几个常用类

  • Post author:
  • Post category:java


引用类型String和StringBuffer

String类型的赋值理解

Int a=3;

a = 5;

这段代码的含义是:首先申请内存单元,命名为a 同时将3这个值存储内存单元中,然后又将5这只存入内存单元中,这个内存单元的之前的只在被赋值后就被修改了。

String str =new String(“abc”)

Str = “123”;

对于引用而言 赋值并不是改变与原来的引用对象的值 而只是调整了引用的关系 所以在使用“==”符号进行比较时 需要特别的注意

publicstatic void main(String[] args) {


String str=newString(“abc”);

String str1=newString(“abc”);

System.out.println(str ==str1);//比较地址

System.out.println(str.equals(str1));//比较值

}

}

因为str和str1 引用的事不同的对象,所以str==str1

因为str和str1 引用的字符串内容是相同的所以 str.equals(str1)为真。

String类常用的方法:eaquals,length,charAt(取字符串里面的一个字符),format(把字符串格式化)substring(切割字符串)indexof(找指定字符)lastindexof(返回最后一次出现在指定字符在此字符串的索引)replace(新的字符代替老的字符所有)

截取,trim(去除头部尾部空白)



StringBuffer:append(在字符串后面添加字符),

insert

(指定字符串一个位置,然后插入字符串),deleteCharAt(删除一个字符),delete(从字符串里面删除一节字符串),replace(把字符串的其中一节替换为传入新的字符串),setCharAt(找字符串里面的一个下标然后改变这个下标代表的值),reverse(字符串反向排列)

1.2数组对象

Arrays提供了数组的常见操作,比如查找,排序等,且他的方法都是静态的,所以实际上他是一个工具类提供方法,方便编程。

Fill(把数组内所有数改为你想改的数)sort(数组排序 从小到大)

MATH类

静态的常量e π

Abs绝对值,sprt平方根,Max最大,pow返回第一个参数的第二个参数次幂的值,min最小,floor向下取整,round(四舍五入,random(随机生成)

1.3日期类





public static void



main(String[]args) {



Calendar calendar =Calendar.getInstance();//获取当前时间的所有信息

/* System.out.println(calendar);

System.out.println(calendar.get(Calendar.YEAR));

System.out.println(calendar.get(Calendar.MARCH));

System.out.println(calendar.get(Calendar.DATE));

System.out.println(calendar.get(Calendar.HOUR));

System.out.println(calendar.get(Calendar.MINUTE));

System.out.println(calendar.get(Calendar.SECOND));*/


calendar.setLenient(



false



);

//关闭默认模式如果设置方法会报错


System.



out



.println(calendar.get(Calendar.



DAY_OF_MONTH



));


System.


out



.println(calendar.get(Calendar.



WEEK_OF_MONTH



));


System.


out



.println(calendar.get(Calendar.



WEEK_OF_YEAR



));


System.


out



.println(calendar.get(Calendar.



DAY_OF_WEEK_IN_MONTH



));


}

}

日期格式化输出



public staticvoid


main(String[] args) {


SimpleDateFormat simpleDateFormat=


new


SimpleDateFormat(


“yyyy-MM-dd HH:mm:ss”


);


//


格式化排列时间





Datedate =


new


Date();

System.



out



.println(date);

System.



out



.println(simpleDateFormat.format(date));

}

}

1.4包装类

为什么要用包装类,因为基础类型和其他类型处理是有不同的

基础类型的赋值,是直接修改变量里面的值,准确的说,是修改了内存单元里面的内容。

其他类型的赋值,是改变了引用的指向。

很多地方统一(尤其是范形),系统就提供了我们基本类型所对应的包装类。

int-Integer

char-Character

其他六个类型首字母大写就是包装类

集合框架

2.1vector

Vector(向量):动态数组

为什么需要动态数组很多时候 我们无法事先去确定数组的元素个数 如果使用了静态数组,小了不够用 大了会造成内存空间的浪费 这个时候我们就需要动态的数组,可以按照一定增量来增加容量。

Vecton 的初始默认容量和增量都是10,可以通过他的构造方法来设置容量和增量,所谓的增量,就是在容量不够时,增加的量。

Size、capacity、add

Remove<Int index>删除指定位置的元素

Remove<Int object o>删除指定元素 (第一个)

Contains 输入一个数查找是否有 有了返回true 没有false

indexOf通过元素找下标
get通过下标找元素
trimToSize将容量调至最小

几个常用方法






2.2栈stack

栈的特点:先进先出,后进后出

Push 增加

Peek  栈顶

Search 查找

Pop 删除栈顶

Stack<Integer> stack =


new


Stack<>();

stack.push(

1

);


//


增加





stack.push(

2

);

stack.push(

3

);

stack.push(

4

);

stack.push(

5

);

stack.push(

6

);

System.



out



.println(stack.peek());



/*stack.pop();


System.out.println(stack.peek());*/


System.



out



.println(stack.search(

6

));

}

2.3List

List : 是一个接口 继承自collection接口,常用的实现类:ArrayList、LinkList



public static void


main(String[] args) {


List<Integer> list =


new


ArrayList<>();

list.add(

1

);

list.add(

2

);

list.add(

3

);

list.add(

4

);

list.add(

5

);


//


添加





list.add(

8

);

System.



out



.println(list.size());


//


返回列表中的元素数





System.



out



.println(list.contains(

5

));


//


如果有输入的元素则输出


true



System.



out



.println(list.get(

4

));


//


返回列表指定位置的元素





System.



out



.println(list.isEmpty());


//


如果列表不包含元素则返回


false



}

2.4Set

Set也是一个接口,它表示一个无重复元素的集合,无序,唯一(它是通过判断hashcode来判断是否重复,如果得不到我们想要的结果,那就重写equals 方法)

Set 的实现类:hashSet



版权声明:本文为a314290362原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。