字符串整體大小寫轉換,首字母大小寫


最近用到了首字母大寫的功能,一般的思路是采用charAt(0)結合Character的toUpperCase方法轉換,最后再拼成一個字符串的方式來實現

日前看到一個大神的代碼,覺得效率比較高,有興趣的朋友可以看一下

代碼如下:

/**
     * 首字母大寫轉換
     * @param str 源字符串,首字母不支持中文
     * @return
     */
    public static String firstCharUpper(String str){
        if(str!=null&Character.isLowerCase(str.charAt(0))){ //根據需要判斷是大寫還是小寫,下面可以做相應的修改
            char[] charArray = str.toCharArray();
            if(charArray!=null){
                charArray[0]-=32; //此處是小寫轉大寫,如果是大寫轉小寫則是+=32,上面需要判斷一下
                return String.valueOf(charArray);
            }
        }
        return str;
    }

下面就是和上面類似的,整個字符串大小寫轉換

/**
     * 字符串大寫化
     * @param str
     * @return
     */
    public static String strUpperCase(String str){
        if(str!=null){
            char[] charArray = str.toCharArray();
            for(int i=0;i<str.length();i++){
                if(Character.isLowerCase(str.charAt(i)))
                    charArray[i]-=32;
            }
            return String.valueOf(charArray);
        }
        return str;
    }
    
    /**
     * 字符串小寫化
     * @param str
     * @return
     */
    public static String strLowerCase(String str){
        if(str!=null){
            char[] charArray = str.toCharArray();
            for(int i=0;i<str.length();i++){
                if(Character.isUpperCase(str.charAt(i)))
                    charArray[i]+=32;
            }
            return String.valueOf(charArray);
        }
        return str;
    }

以上,歡迎有更好的方法借鑒學習

@ink


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM