java基础-从键盘接收一个字符串,对字符串中的字母进行大小写互转

/*
 * 思路:
 * 1.对一个字符串进行转换,那么必须要先从键盘中接收数据,所以要用到输入流
 * 2.在输入后,要想对字符串中的字母进行大小写互转,那么就必须加入一个方法,来实现这个功能。
 * 3.大小写字母转换,必须从String类型转换到Char[]类型,然后再进行判断
 * 4.对于一般的其他字符如数字,汉字,就不用进行处理,直接打印输出即可
 * 
 */
public class Test6 {

	public static void main(String[] args) throws Exception{
		transStream();

	}
	public static void transStream(){
		BufferedReader br = null;
		BufferedWriter bw = null;
		try {
			//键盘录入
			br = new BufferedReader(new InputStreamReader(System.in));
			//屏幕输出
			bw = new BufferedWriter(new OutputStreamWriter(System.out));
			String line = null;
			while((line=br.readLine())!=null){
				if("over".equals(line))
					break;
				bw.write(wordChange(line));
				bw.newLine();
				bw.flush();
			}
		} catch (Exception e) {
			//简单处理
			e.printStackTrace();
		}finally{
			try {
				br.close();
			} catch (IOException e) {
				e.printStackTrace();
			}
		}
		
		
		
	}
	//字符转换,只对大小写字母进行转化
	public static String wordChange(String line){
		char[] ch = line.toCharArray();
		//加入StringBuilder对字母进行增加
		StringBuilder sb = new StringBuilder();
		for(int i =0;i='A'&&ch[i]<='Z'){
				ch[i]+=32;
				sb.append(ch[i]);
			////加入判断,因为小写字母-32就是大写字母
			}else if(ch[i]>='a'&&ch[i]<='z'){
				ch[i]-=32;
				sb.append(ch[i]);
			}else{
				//对其他字母不进行判断
				sb.append(ch[i]);
			}
		}
		return sb.toString();
	}

}

你可能感兴趣的:(java基础)