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));
}
}