java核心的API类

来源:互联网 发布:中药粉碎机淘宝 编辑:程序博客网 时间:2024/06/05 01:51
gassion永刚、期待与您交流! ----------

 

String字符串

String s1=”abc” s1是一个类类型变量,“abc”是一个对象

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

比较两个对象是否相等?

例如:

   String s1= “abc”;

 String s2=new String(“abc”);

System.out.println(s1==s2);

System.out.println(s1.equals(s2));

打印的结果是 false  true

这是因为 == 比较的是地址的值 也就是hashCode值。

         Equals 比较的是值的内容。(String类里面复写了object类里面的equals方法,该方法用于判断两个字符串是否相等)

S1和s2的区别:

   S1在内存中产生1个对象,s2在内存中产生两个对象。(new就是产生一个对象)

String类适用于猫鼠字符串事物。

  字符串的常见操作

获取

1.1字符串中的包含的字符数,也就是字符串的长度

    int length():获取长度

1.2根据位置获取某位置上的字符串

  char charAt(int index)

1.3根据字符串获取该字符串中的位置

   int indexOf(int ch):返回的是ch在字符串中第一次出现的位置

   int indexOf(int ch , int fromIndex):从fromIdex指定位置开始,获取ch在字符串中出现的位置。

   int indexOf(String str):返回的是str在字符串中第一次出现的位置

   int indexOf(String str,int fromIdex):返回从fromIdex指定位置开始,获取str在字符串中出现的位置

   int lastIndexOf(int ch);返回指定字符在此字符串中最后一次出现处的索引。

判断
2.1字符串中是否包含某一个字串
  boolean contains( string str):当且仅当此字符串包含指定的 char 值序列时,返回 true。
     特殊之处:indexOf(string str):可以索引str第一次出现的位置,如果返回-1,表示该str不存在
      所以,也可以用于对指定判断是否包含。
          if(str.indexOf("aa")!=-1
        而且该方法既可以判断,也可以获取出现的位置。
2.2字符串中是否有内容。
 boolean isEmpty():原理就是判断长度是否为0.
2.3字符串是否是以指定内容开头。
 boolean startsWith(string str)
2.4字符串是否是以指定内容结尾。
boolean endsWith(String str);
2.5判断字符串内容是否相同。复写了Object类中的equals方法。
boolean equals(string str);
2.6判断内容是否相同,并忽略大小写。
boolean equalsIgnoreCase();
转换
3.1 将字符数组转成字符串。
    (1)构造函数:string(char[] ch)
                   string(char[] ch ,int  offset, int count):将字符数组中的一部分转成字符串
    (2)静态方法:static String copyValueOf(char[] ch);
                   static String copyValueOf(char[] ch,int offset,int count)
                   static String valueOf(char[]);
3.2 将字符串转成字符数组(很重要|)
char[]  toCharArray();
3.3将字节数组转换成字符串。
       String(byte[])
       string(byte[],int offset, int count);将字节数组中的一部分转换成字符串。
3.4将字符串转成字节数组
 byte[] getBytes();
3.5将基本数据类型转成字符串。
static String valueOf(int index)
static String valueOf(double index)
     特殊:字符串和字节数组在转换过程中,是可以指定编码表的。
4.替换
String  replace(String oldchar, String newChar);
5切割
String[] split( String regex)
6 字串,获取字符串中的一部分
String substring(int begin);
String substring(int begin,int end);
7.1 转换
   String toUpperCase();将字符串转换成大写
   String toLowerCase();将字符串转换成小写
 7.2将字符串两端的多个空格去除。
   String trim();
7.3对两个字符串进行自然顺序的比较
   int compareTo(String stu);

如果参数字符串等于此字符串,则返回值 0; 

如果此字符串按字典顺序小于字符串参数,则返回一个小于 0 的值; 

如果此字符串按字典顺序大于字符串参数,则返回一个大于 0 的值。 

     StringBuff
字符串的组成原理就是通过该类实现的。
StringBuffer 可以对字符串内容进行增删。
StringBuffer
是字符串缓冲区,是一个容器。
是可变长度的。
可以操作多个数据类型。
最终会通过tostring方法打印出来。
很多方法与String相同。
StringBuffer可以进行
1.    存储
StringBuffer append();将指定数据作为参数添加到已有数据结尾处。
StringBuffer insert(int index,数据 )可以将数据插入到index位置。
2.    删除
StringBuffer delete(int Start,int end)删除从start开始到end之间的数据(不包括end).
StringBuffer deleteChar(int 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(int start ,int end ,string str);替换字符串
void  setCharAt(int index,char ch)替换单个字符
5.    反转
public StringBuffer reverse();将字符串反转
6.    将缓冲区中指定数据存储到指定字符数组中。
public void getChars(int srcBegin, int srcEnd,char[] dst,int dstBegin)
StringBuilder和StringBuffer区别?
StringBuffer线程同步的线程安全。
StringBuilder是线程不同步的。

原创粉丝点击