用户输入数据,按回车结束后,将数据转换成大写,打印到控制台,若用户输入over,结束键盘录入

来源:互联网 发布:2016天猫双11数据分析 编辑:程序博客网 时间:2024/06/05 19:21

方式一:

public static void inKey() throws IOException {
// TODO Auto-generated method stub
InputStream input=System.in;
StringBuilder s=new StringBuilder();
int ch=0;
while((ch=input.read())!=-1)
{
if(ch=='\r')
continue;
if(ch=='\n')
{
//存储之前确定是否换行,若换行则不存储
String temp=s.toString();
if(temp.equals("over"))
break;
System.out.println(s.toString().toUpperCase());
s.delete(0, s.length());
}
else s.append((char)ch);
}
}

方式二:

public static void inKey() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in); 
//创建缓冲区读取流,关联字符流
BufferedReader br=new BufferedReader(isr);
String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
else System.out.println(str.toUpperCase());
}

方式三:

public static void inKey2() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in);
//创建缓冲区读取流
BufferedReader br=new BufferedReader(isr);

//创建字节输出流
OutputStream os=System.out;
//将字节流转换成字符流
OutputStreamWriter osw=new OutputStreamWriter(os);

String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
osw.write(str.toUpperCase()+"\r\n");
osw.flush();
}
}

方式四:

public static void inKey3() throws IOException {
// TODO Auto-generated method stub
//创建字节输入流
InputStream in=System.in;
//将字节流转换成字符流
InputStreamReader isr=new InputStreamReader(in);
//创建缓冲区读取流
BufferedReader br=new BufferedReader(isr);

//创建字节输出流
OutputStream os=System.out;
//将字节流转换成字符流
OutputStreamWriter osw=new OutputStreamWriter(os);
//创建缓冲区输出流
BufferedWriter bw=new BufferedWriter(osw);

String str=null;
while((str=br.readLine())!=null)
{
if ("over".equals(str)) break;
bw.write(str.toUpperCase());
bw.newLine();
bw.flush();
}
}


最简单的写法:

public static void inKey4() throws IOException {
// TODO Auto-generated method stub
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
String str=null;
while((str=br.readLine())!=null)
{
if("over".equals(str)) break;
bw.write(str.toUpperCase());
bw.newLine();
bw.flush();
}
}

0 0
原创粉丝点击