Java 字符串常用操作(String类)

字符串查找
  1. indexOf(String s)
    该方法用于返回参数字符串s在指定字符串中首次出现的索引位置,当调用字符串的indexOf()方法时,会从当前字符串的开始位置搜索s的位置;如果没有检索到字符串s,该方法返回-1

    String str ="We are students";
    int size = str.indexOf("a"); // 变量size的值是3  
  2. lastIndexOf(String str)
    该方法用于返回字符串最后一次出现的索引位置。当调用字符串的lastIndexOf()方法时,会从当前字符串的开始位置检索参数字符串str,并将最后一次出现str的索引位置返回。如果没有检索到字符串str,该方法返回-1.
    如果lastIndexOf方法中的参数是空字符串”” ,则返回的结果与length方法的返回结果相同。
获取指定索引位置的字符

使用charAt()方法可将指定索引处的字符返回。

String str = "hello word";
char mychar =  str.charAt(5);  // mychar的结果是w
获取子字符串
  1. substring(int beginIndex)
    该方法返回的是从指定的索引位置开始截取知道该字符串结尾的子串。

    String str = "Hello word";
    String substr = str.substring(3); //获取字符串,此时substr值为lo word
  2. substring(int beginIndex, int endIndex)
    beginIndex : 开始截取子字符串的索引位置
    endIndex:子字符串在整个字符串中的结束位置
String str = "Hello word";
String substr = str.substring(0,3); //substr的值为hel
去除空格

trim()方法返回字符串的副本,忽略前导空格和尾部空格。

字符串替换

replace(oldchar,newChar)方法可实现将指定的字符或字符串替换成新的字符或字符串
oldChar:要替换的字符或字符串
newChar:用于替换原来字符串的内容
如果要替换的字符oldChar在字符串中重复出现多次,replace()方法会将所有oldChar全部替换成newChar。需要注意的是,要替换的字符oldChar的大小写要与原字符串中字符的大小写保持一致。

String str= "address";
String newstr = str.replace("a", "A");// newstr的值为Address
判断字符串的开始与结尾

startsWith()方法与endsWith()方法分别用于判断字符串是否以指定的内容开始或结束。这两个方法的返回值都为boolean类型。
1. startsWith(String prefix)
该方法用于判断当前字符串对象的前缀是否是参数指定的字符串。
2. endsWith(String suffix)
该方法用于判断当前字符串是否以给定的子字符串结束

判断字符串是否相等
  1. equals(String otherstr)
    如果两个字符串具有相同的字符和长度,则使用equals()方法比较时,返回true。同时equals()方法比较时区分大小写。
  2. equalsIgnoreCase(String otherstr)
    equalsIgnoreCase()方法与equals()类型,不过在比较时忽略了大小写。
按字典顺序比较两个字符串

compareTo()方法为按字典顺序比较两个字符串,该比较基于字符串中各个字符的Unicode值,按字典顺序将此String对象表示的字符序列与参数字符串所表示的字符序列进行比较。如果按字典顺序此String对象位于参数字符串之前,则比较结果为一个负整数;如果按字典顺序此String对象位于参数字符串之后,则比较结果为一个正整数;如果这两个字符串相等,则结果为0.

str.compareTo(String otherstr);
字母大小写转换

字符串的toLowerCase()方法可将字符串中的所有字符从大写字母改写为小写字母,而tuUpperCase()方法可将字符串中的小写字母改写为大写字母。

str.toLowerCase();
str.toUpperCase();
字符串分割

使用split()方法可以使字符串按指定的分隔字符或字符串对内容进行分割,并将分割后的结果存放在字符数组中。

str.split(String sign);

sign为分割字符串的分割符,也可以使用正则表达式。
没有统一的对字符串进行分割的符号,如果想定义多个分割符,可使用符号“|”。例如,“,|=”表示分割符分别为“,”和“=”。

str.split(String sign, in limit);

该方法可根据给定的分割符对字符串进行拆分,并限定拆分的次数

获取字符串的长度 length()
把字符串转化为相应的数值
  1. int型Integer.parseInt(字符串)
  2. long型Long.parseLong(字符串)
  3. double型Double.valueOf(字符串).doubleValue()
字符串数组与字符串之间的转换

一个字符串可以变为一个字符 数组,同样,也可以把一个字符数组,变为一个字符串。
在String类中提供了以下操作方法:
将字符串变为字符数组:
public char[] toCharArray()
public String(char[] value)
public String(char[] value,int offset,int count)

public class StringAPIDemo01{  
    public static void main(String args[]){  
        String str1 = "hello" ;         // 定义字符串  
        char c[] = str1.toCharArray() ; // 将一个字符串变为字符数组  
        for(int i=0;i<c.length;i++){ // 循环输出  
            System.out.print(c[i] + "、") ;   
        }  
        System.out.println("") ;        // 换行  
        String str2 = new String(c) ;   // 将全部的字符数组变为String  
        String str3 = new String(c,0,3) ;   // 将部分字符数组变为String  
        System.out.println(str2) ;      // 输出字符串  
        System.out.println(str3) ;      // 输出字符串  
    }  
};  
字符串与byte数组的转换

byte数组(字节数组),在一般的IO操作中会经常使用到。
在String类中提供了以下的方法可以进行字符串与字节数组间的转换:
字符串变为字节数组:public byte[] getBytes()
将一个字节数组变为字符串:
将全部字节数组变为String:pbulic String(byte[] bytes)
将部分字节数组变为String:public String(byte[] bytes,int offset,int length)

public class StringAPIDemo03{  
    public static void main(String args[]){  
        String str1 = "hello" ;         // 定义字符串  
        byte b[] = str1.getBytes() ;    // 将字符串变为byte数组  
        System.out.println(new String(b)) ; // 将全部的byte数组变为字符串  
        System.out.println(new String(b,1,3)) ; // 将部分的byte数组变为字符串  
    }  
};  
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值