java String类

java String类的基本使用

package com.sl.String.ui;

import java.lang.reflect.Array;
import java.util.Arrays;

public class StringTest {


public static void main(String[] args) {

    createString();

    System.out.println("字符串长度:"+ getsStringLength("获取字符串长度"));

    getStringLookup();

    stringManipulation();

    stringWhitespaceRemoval();

    stringSubstitution();

    stringStartAndEnd();

    stringEquality();

    stringCaseConversion();

    stringSegmentation();



}

/**
 * 创建字符串
 */
public static void createString(){

    //用字符数组a创建String对象
    char a[] ={'g','o','o','d'};
    String s=new String(a);

    //提取字符数组b的一部分创建String对象
    char b[] ={'a','b','c','d'};
    String s1 = new String(b,1,3);

    //常量赋值创建String对象
    String s2,s3;
    s2="abcdefg";
    s3="hijk";

    //直接创建String对象
    String s4=new String("1235363352225");

    System.out.println(s+"\n"+s1+"\n"+s2+"\n"+s3+"\n"+s4);

}

/**
 * 获取字符串长度
 * @param s  传入的字符串
 * @return   长度
 */
public static int getsStringLength(String s){
    int length = 0;
    length = s.length();
    return length;
}

/**
 * 字符串的查找
 */
public static void getStringLookup(){

    String s =new String("abcdefagab");
    //查找某个字符串在字符串中的首次出现的索引
    int index = s.indexOf("a");
    System.out.println("a在s对象中首次出现索引是:"+index);

    /**
     * 查找某个字符串在字符串中的最后一次出现的索引
     * 注意:如果lastIndexOf()方法中的字符串是空字符串"",则返回的记过与调用length()方法返回的结果相同
     */
    int index2 = s.lastIndexOf("a");
    System.out.println("a在s对象中最后一次出现索引是:"+index2);

    //获取指定索引的字符串
    char c = s.charAt(3);
    System.out.println("s对象指定索引的字符是:"+c);

}

/**
 * 字符串操作
 */
public static void stringManipulation(){

    String s =new String("abcdefagab");
    //从指定索引位置开始截取到该字符串结尾的子字符串(包含该索引下的字符)
    int index = 2;
    String s1 = s.substring(index);
    System.out.println("从索引"+index + "到结尾的字符串是:" + s1);

    //从字符串某一索引开始截取到某一索引结束的子字符串(不包含index2下标的字符)
    int index2 = 5;
    String s2= s.substring(index,index2);
    System.out.println("从索引"+index + "到" + index2 + "的字符串是:" + s2);

}

/**
 * 去除空格
 */
public static void stringWhitespaceRemoval(){
    String s ="abcdefagab         ";
    String s1 =s.trim();
    System.out.println("原长度为"+ s.length() + "\n"+"去除空格后的字符串:"+s1 + "\n" + "长度为:"+s1.length());

}

/**
 * 字符串替换
 */
public static void stringSubstitution(){

    String s ="abcdefagab";
    String s1 = s.replace("a","9");
    System.out.println("替换前的字符串:"+s +"\n"+"替换后的字符串:"+s1);

    //如果要替换的字符串没有出现在该对象表达式字符串序列中,则原字符串返回
    String s2 = s.replace("h","9");
    System.out.println("替换前的字符串:"+s +"\n"+"替换后的字符串:"+s2);

}

/**
 *判断字符串开始与结尾
 */
public static void stringStartAndEnd(){
    String s ="abcdefagab";
    String prefix = "a";
    String suffix = "a";

    if (s.startsWith(prefix)){
        System.out.println(s+"是以"+prefix + "开始的");
    }
    else {
        System.out.println(s+"不是以"+prefix + "开始的");
    }

    if (s.endsWith(suffix)){
        System.out.println(s+"是以"+prefix + "结束的");
    }
    else {
        System.out.println(s+"不是以"+prefix + "结束的");
    }

    //从特定下标下开始
    int index = 6;
    if (s.startsWith(prefix,index)){
        System.out.println("从"+index + "开始查找的"+s+"字符串是以"+prefix + "开始的");
    }
    else {
        System.out.println("从"+index + "开始查找的"+s+"字符串不是以"+prefix + "开始的");
    }

}

/**
 * 判断字符串相等
 */
public static void stringEquality(){

    String s = new String("jfhkofoldol");
    String s2 = new String("Afkkfopgpfppe");
    String s3 = new String("Jfhkofoldol");

    //运算符判断  没法判断内容相等  因为s与s1是两个不同的对象
    if (s==s2){
        System.out.println(s+"与"+s2+"相等");
    }
    else {
        System.out.println(s+"与"+s2+"不相等");
    }

    //比较两个字符串内容是否相等   区分大小写
    if (s.equals(s3)){
        System.out.println(s+"与"+s3+"相等");
    }
    else {
        System.out.println(s+"与"+s3+"不相等");
    }

    //比较两个字符串内容是否相等   不区分大小写
    if (s.equalsIgnoreCase(s3)){
        System.out.println(s+"与"+s3+"相等");
    }
    else {
        System.out.println(s+"与"+s3+"不相等");
    }
}

/**
 * 字符串字母大小写转换
 * 注意:如果字符串中没有被转换的字符,则将返回原字符
 */
public static void stringCaseConversion(){
    String s = new String("jfhkofBBBBBBBBBBldol");
    //大写转成小写
    s = s.toLowerCase();
    System.out.println(s);

    //小写转成大写
    s=s.toUpperCase();
    System.out.println(s);

}

/**
 * 字符串分割
 */
public static void stringSegmentation(){

    String s = new String("jfhk=of=BBB-BBBBB-BBl-dol");
    //单个字符分割  不限定次数
    String[] stringarray=s.split("-");
    System.out.println("单个字符分割"+s+"分割成:"+ Arrays.toString(stringarray));

    //多个字符分割 不限定次数
    String[] stringarray2=s.split("-|=");
    System.out.println("多个字符分割"+s+"分割成:"+ Arrays.toString(stringarray2));

    //限定次数
    String[] stringarray3=s.split("-",2);
    System.out.println("单个字符分割"+s+"限定2次"+"分割成:"+ Arrays.toString(stringarray3));

}
}

你可能感兴趣的:(java String类)