【Java基础】之字符串大小写转换不利用API.

public class UpStr
{
    static String str = "AbcDeFdDSfgdsadeADFSAFCfdsa";
    
    public String transformUpperOrLower(String str, String type)
    {
        //将字符串转换为char数组
        char[] ch = str.toCharArray();
        
        if (type == null || type.length() == 0 || type.equals(""))
        {
            type = "upper";
        }
        
        if (type.equals("upper"))
        {
            return toUpper(ch);
        }
        return toLower(ch);
    }
    
    public String transformUpperOrLower(String str)
    {
        return transformUpperOrLower(str, null);
    }
    
    private String toUpper(char[] ch)
    {
        for (int i = 0; i < ch.length; i++)
        {
            //每个char字符型都对应一个ASCII码值,
            //大写的A---Z是比小写的a---z相应的减少32。
            if ('a' <= ch[i] && ch[i] <= 'z')
            {
                ch[i] -= 32;
            }
        }
        //将字符数组转换为String。
        return String.valueOf(ch);
    }
    
    private String toLower(char[] ch)
    {
        for (int i = 0; i < ch.length; i++)
        {
            if ('A' <= ch[i] && ch[i] <= 'Z')
            {
                ch[i] += 32;
            }
        }
        return String.valueOf(ch);
    }
    
    public static void main(String[] args)
    {
        System.out.println(new UpStr().transformUpperOrLower(str));
    }
}

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。