美文网首页
java String类

java String类

作者: SnailLi | 来源:发表于2018-12-03 16:14 被阅读6次

    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类

          本文链接:https://www.haomeiwen.com/subject/ornycqtx.html