黑马程序员——String类和基本数据类型对象包装类



-----------------ASP.Net+Unity开发、.Net培训、期待与您交流! -----------------

 

1,字符串概述:

  String类适用于描述字符串事物。

  字符串有两种创建方式

  String s1 = "abc";

  String s2 = new String("abc");

  字符串最大的特点就是:一旦被初始化就不可以被改变。

  注意:s1S2有什么区别呢?

        s1在内存中有一个对象,而s2在内存中有两个对象。

  另外,String类复写了Object类中的equals方法,该方法用于判断字符串内容是否相同。

 

2String类中常见方法介绍。

  获取

  int length() : 用于获取字符串的长度。

  char charAt(int index) :根据位置获取位置上的某个字符。

  int indexOf(int ch) :根据字符获取字符在该字符串中的位置。

 

  判断

  boolean contains(str):判断字符串中是否包含某一个字串。

  boolean isEmpty(): 判断字符串中是否有内容。从jdk1.6开始。

  boolean startsWith(str):判断字符串是否以指定内容开头。

  boolean endsWith(str) :判断字符串是否以指定内容结尾。

  boolean equals(str) ;判断字符串内容是否相同,复写Object类中equals方法。

  boolean equalsIgnoreCase(): 判断内容是否相同,并忽略大小写。

 

  转换

  构造函数

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

  静态方法

  static String copyValueOf(char[]);

  static String copyValueOf(char[] data,int offset, int count)

  static String valueOf(char[])

 

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

  String(byte[]),String(byte[],offset,count):将字节数组中的一部分转成字符串

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

  static String valueOf(int),static String valueOf(double)将基本数据类型转成字符串。

 

  替换

  String replace(oldchar,newchar); 用新字符替换旧字符。

 

  切割

  String[] split(regex): 将字符串切割成多个字符字串

 

  字串

  String subString(begin),String subString(begin,end) :获取字符串中的一部分

 

  转换,去除空格,比较

  String toUpperCase()String toLowerCase() : 将字符串转成大写或小写

  String trim() :将字符串两端的多个空格去除。

  int compareTo(String) 对两个字符串进行自然顺心的比较。

 

3StringBuffer

  StringBuffer是字符串缓冲区,是一个容器

  特点:

  (1)长度是可变化的

  (2)可以操作多个数据类型。

  (3)最终会通过toString方法变成字符串

 

  常见操作:CRUD create read update delete

  (1)存储

  StringBuffer append() 将指定数据作为参数添加到已有数据结尾处。

  StringBuffer insert(index,数据可以将数据插入到指定index位置

  (2)删除

  StringBuffer delete(start,end) :删除缓冲区中的数据,包含start,不包含end.

  StringBuffer deleteCharAt(index): 删除指定位置的字符。

  (3)获取

  char charAt(int index)

  int indexOf(String str)

  int lastIndexOf(String str)

  int length()

  String substring(int start ,int end)

  (4)修改

  StringBuffer replace( start, end , string)

  void setCharAt(index,char ch) 将给定索引处的字符设置为 ch

  void getChars(int srcBegin, int srcEnd, char[] dst,int dstBegin)将缓冲区中

  的数据存储到指定字符数组中。

 

  JDK1.5 版本之后出现了StringBuilder

  StringBuffer 是线程同步

  StringBuilder 线程不同步

  开发过程中,建议使用StringBuilder

  升级三要素:

  (1)提高效率

  (2)简化书写

  (3)提高安全性

 

4,基本数据类型对象包装类。

  byte Byte

  short Short

  int Integer

  long Long

  boolean Boolean

  float Float

  double Double

  char Character

  基本数据类型对象包装类的最常见作用:

    就是用于基本数据类型和字符串类型之间做转换

 

  基本数据类型转成字符串

    基本数据类型+“”

    基本数据类型.toString(基本数据类型值)

    如:Integer.toString(34);//34证书变成“34”。

    还有一种,String.valueOf(基本数据类型值)

 

字符串转成基本数据类型

    xxx a = Xxx.paseXxx(String);

    int a = Integer.paseInt("123");

    double b = Double.paseDouble("123");

    boolean b = Boolean.paseBoolean("false");

    Integer i = new Integer("123");

    int num = i.intValue();

十进制转成其他进制

  toBinaryString();

  toHexString();

  toOctalString();

其他进制转成十进制

parseInt(String s, int radix)

 

JDK1.5版本以后出现的新特性

自动拆装箱

Integer x = new Integer(4);

Integer x = 4;//自动装修。//new Integer(4)

x=x+2; x进行自动拆箱。变成了int类型,与2进行相加。

 

注意:

Integer m =128;

Integer n =128;

此处m==nfalse

Integer a = 127;

Integer b =127;

a==b true。因为ab指向了同一个Integer对象。

          当数值在byte范围内时,对于新特性,如果该数值已经存在,则不会开辟

          新空间

 

 

-------------ASP.Net+Unity开发、.Net培训、期待与您交流! ------------

详情请查看:www.itheima.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值