Java高级——Java中常用类(一)

一. 包装类

  1. 概念把我们基本的数据类型进行了包装,包装一个类
  2. 包装类的作用:

3.包装类的基本类型:

包装类型的首字母要大写,阿里手册要求

 

4.包装类的用法

基本数据类型——包装类型 此过程称为装箱

包装类型——基本数据类型 此过程称为拆箱

5.创建包装类:

语法:Integer b=new Integer(7) ------>7也可以加引号,赋值只能是数字,不能有字

6.装箱和拆箱操作:

int a=1;

Integer a=new Integer (1);包装类 基本类型--->包装类

Integer a=new Integer ("1");       byte--->Byte

boolean--->Boolean

char--->Character

int-->Integer  装箱操作      short--->Short

int a=1;          int--->Integer

Integer b=new Integer(a); 装箱操作       long--->Long

Integer c=a;  自动装箱操作       float--->Float

 double--->Double

Integer-->int  拆箱操作

int d=b.intValue(); 拆箱操作

int e=b;自动拆箱操作

boolean i=false;

Boolean i2=new Boolean(false);

Boolean i3=new Boolean("false");

Boolean i4=new Boolean(i);装箱

Boolean i5=i;自动装箱

boolean i6=i4.booleanValue();拆箱

boolean i7=i4;自动拆箱

7.Number类是Byte、Short、Integer、Long、Float、Double的父类,以下六个方法定义在Number类中:(了解)

       byte byteValue()

       short shortValue()

       int intValue()

       long longValue()

       float floatValue()

       double doubleValue()

string类

1.string的用法

1字符串:由多个字符组成的一串数据。

       写法: String str=“这是一个字符串”

  (2)特点:(背)

字符串字面值就是一个对象

字符串一旦赋值不能改变(值不可变,地址可变)

 String s = "hello"和String s2 = new String("hello")区别?

前者创建一个对象,后者创建两个对象。

  • 字符串字面值就是一个对象
  • 字符串之间赋值的方式是先到 字符串常量池里面去找,如果有就之间返回,如果没有就创建该值进行返回
  • 字符串一旦赋值不能改变(值不可变,地址可变)

2.字符串的不变性

3.常用方法:

1char charAt(int index)

返回指定的index处char值查位置用的要在方法里调用  下0

(2)String concat(String str)

将指定的字符串str连接到当前字符串的末尾,并返回此新字符串对象

两个串连接到在一起,形成新

(3)boolean contains(charSequences)

此字符串对象是否包含指定的字符序列(一般可以认为是字符串)

查找名字 事务)   true是有 false是没有

4boolean startswith(String prefix)

此字符串是否以指定的前缀开头  …..开头的

(5)boolean endsWith(String suffix)

此字符串是否以指定的后缀结尾  以…….结尾

(6)boolean equals (Object anObject)

对比此字符串对象与指定的对象的内容进行对比  比较内容是否一样

(7)boolean equalslgnoreCase(String anotherString)

对比此字符串对象与指定的内容进行忽略大小写的 

例如:验证码(不区分大小写)

(8)int indexOf(int ch)

返回指定字符在字符串对象中首次出现的索引

(9) int indexOf(String str)

返回指定字符在字符串对象中首次出现的索引

(10) int lastIndexOf(int ch)

(11) int lastIndexOf (String str)

都是返回指定字符串在字符串对象中最后一次出现的索引

(12)int length()

返回字符串的长度  长度是个数,有多少个字符

(13).boodean isEmpty()  此字符串是否为空串

只有length=0时,那是空 为True

(14)String replace(char oldChar,char newChar)

返回使用newChar 替换oldchar之后的新String对象   

替换字符,字串,一句话等

(15) String replace(CharSequence oldString,Char Sequence newString)    返回使用oldSting替换newString之后的新String对象

(16)String [] split(String regex)    分割不同的字符串

按照给定的字符串或者正则表达式进行字符串的分割   

(17).String substring(int beginIndex)

返回指定起始位置的字符串  取字串

(18).String substring(int beginIndex,int endIndex)

返回指定起始位置,指定结束位置的字符串

(19).String toLowerCase()

返回此字符串的小写字符     大小写转换功能

(20).String toUpperCase()

返回此字符串的大写字符

(21).String trim()

返回去掉字符串前后(去空格的所有空格的新字符串

(22)static string valueOf(…)   static 类名,方法名

将参数内容转换成String对象    转换功能

4.string构造方法:

 *  String():无参构造

 *  String(byte[] bytes):将字节数组转成字符串

 *  String(byte[] bytes, int index, int length):将字节数组中的一部分转成字符串

 *  String(char[] value):将字符数组转成字符串

 *  String(char[] value, int index, int count):将字符数组中的一部分转成字符串

 *  String(String original)

String特点

字符串字面值就是一个对象

字符串一旦赋值不能改变

成员方法

判断功能:

 *   boolean contains(String s):判断字符串是否包含指定的字符串

 *   boolean equals(Object anObject):判断两个字符串内容是否相同

 *   boolean equalsIgnoreCase(String anotherString):判断两个字符串内容是否相同,忽略大小写

 *   boolean startsWith(String prefix):判断字符串是否以指定字符串开头

 *   boolean endsWith(String suffix):判断字符串是否以指定字符串结尾

 *   boolean isEmpty():判断字符串内容是否为空

 

 获取功能:

 *  char charAt(int index):获取指定下标位置的字符

 *  int indexOf(int ch):获取指定字符在字符串中第一次出现的位置

 *  int indexOf(String str):

 *  int indexOf(String str, int fromIndex):

 *  int lastIndexOf(int ch):

 *  int lastIndexOf(String str):

 *  int length():获取字符串的长度

 *  String substring(int beginIndex):截取

 *  String substring(int beginIndex, int endIndex):截取一部分,包括start,不包括end

 

 转换功能:

 *  byte[] getBytes():将字符串转换成字节数组

 *  char[] toCharArray():将字符串转换成字符数组

 *  String toLowerCase():将字符串遍小写

 *  String toUpperCase():将字符串遍大写

 *  static String valueOf(char[] data):将字符数组变字符串

 

 String类中的其他功能:

 * 替换功能:

 * String replace(char oldChar, char newChar):将字符串中的某个字符进行替换

 * String replace(String oldString, String newString):

 * 

 * 去除两端空格:

 * String trim()

 * 分割:

 * String[] split(String regex)

 * 字典顺序比较字符串

 * int compareTo(String anotherString) 

三.StringBuffer和StringBuilder类

1.String,int,Integer相互转换

(1)String int Integer相互转换

String-->int   

String str="123";   只能是int类型,不能有字符

int i=Integer.parseInt(str);   可以加减法

(2)String-->Integer

String str="123";     不能有字

Integer i= new Integer(str);

Integer i2= Integer.valueof(str);   把指定参数变成Integer

(3)int-->Integer    这相当于装箱操作

int i=123;

Integer i2=i;

Integer i3=new Integer(i);

(4)int-->String  

int i=123;

String s1=i+"";

String s2=String.valueof(i);   强制装换的

(5)Integer-->int     这相当于拆箱操作

Integer i=new Integer(123);

int i2=i;

int i3=i.intValue();

(6)Integer-->String

Integer i=new Integer(123);

String s1=i+"";

String s2=String.valueof(i);  方法的重载,参数类型不同

四.字符串缓冲类

如果这个操作的数量非常大,呢对于系统内存的消耗是非常大,也拖延了程序的执行时间,为了解决这个问题,出现了StringBuffer-字符串缓冲

StringBuffer类

String类

 

StringBuffer类

1.定义线程可变的字符序列,提供字符串缓冲区

2.StringBuffer类的构造方法

1 StringBuffer()

  • StringBuffer(String str)

2添加方法:

   StringBuffer append(String str);

可以追加任何类型的数据

StringBuffer insert(int offset, String str);

插入任何类型的数据

3 删除功能:

 *  StringBuffer delete(int start, int end):删除从start下标开始到end结束 

 *  StringBuffer deleteCharAt(int index):删除指定位置上的字符

4 反转:

 *  StringBuffer reverse()

 

(二)StringBuilder

StringBuilder类也代表可变字符串对象,实际上,StringBuilder和StringBuffer基本相似,两个类的构造结构和方法也基本相同。

String和StringBuffer和StringBuilder区别?

 *  String:内容和长度不可变。

 *  StringBuffer和StringBuilder:内容和长度可变。

 *      StringBufer:线程安全,效率低。

 *      StringBuilder:线程不安全,效率高。

String、StringBuffer、StringBuilder三者的异同

String:不可变的字符序列。底层使用char[]进行存储。

StringBuffer:可变的字符序列。线程安全的,效率低。底层使用char[]存储。

StringBuilder:可变的字符序列。线程不安全的,效率高。底层使用char[]存储。

StringBuffer类的常用方法

StringBuffer apend(xxx):提供了很多的append()方法,用于进行字符串拼接。

StringBuffer delete(int start,int end):删除指定位置的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

layroy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值