今天上课老师用C编的小程序例子,我好奇用Java编了下
代码如下:
import java.io.*;public class A
{
public static void main(String[] args)
{
char strIn = '';
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader buffIn = new BufferedReader(in);
System.out.println("请输入");
try
{
strIn = buffIn.readLine();//命令行读入数据
}
catch (IOException e)
{
System.out.println(e.toString());
}
/*
*ACSII码
*/
if (strIn <= 48 && strIn >= 57)
{
System.out.println("数字");
}
else if (strIn <= 97 && strIn >= 122)
{
System.out.println("小写字母");
}
else
{
System.out.println("大写字母");
}
}
}为什么编译不能通过,是不是用错了类库???readLine方法必需是字符串?
谢谢个位指点!!!
代码如下:
import java.io.*;public class A
{
public static void main(String[] args)
{
char strIn = '';
InputStreamReader in = new InputStreamReader(System.in);
BufferedReader buffIn = new BufferedReader(in);
System.out.println("请输入");
try
{
strIn = buffIn.readLine();//命令行读入数据
}
catch (IOException e)
{
System.out.println(e.toString());
}
/*
*ACSII码
*/
if (strIn <= 48 && strIn >= 57)
{
System.out.println("数字");
}
else if (strIn <= 97 && strIn >= 122)
{
System.out.println("小写字母");
}
else
{
System.out.println("大写字母");
}
}
}为什么编译不能通过,是不是用错了类库???readLine方法必需是字符串?
谢谢个位指点!!!
strIn = buffIn.readLine();//命令行读入数据//readLine返回的是String 不能从String转化到char.应该定义String strInt = null;strInt = Integer.parseInt(buffIn.readLine());
应该是int strInt = 0;
strInt = Integer.parseInt(buffIn.readLine());
import java.io.*;public class Test02{
public static void main(String[] args){
int strIn=0;
System.out.println("请输入");
try{
BufferedReader buffIn = new BufferedReader(
new InputStreamReader(System.in));
while((strIn=buffIn.read())!=-1){
if (strIn >= 48 && strIn <= 57)
System.out.println((char)strIn+": 数字");
else if (strIn >= 97 && strIn <= 122)
System.out.println((char)strIn+": 小写字母");
else if(strIn >= 65 && strIn <= 90)
System.out.println((char)strIn+": 大写字母");
else System.out.println((char)strIn+": 其他");
}
buffIn.close();
}
catch (IOException e)
{
System.out.println(e.toString());
}
}
}
另:输出时还需要把回车和换行符给屏蔽掉, 它们的值分别是10和13:if(strIn!=13&&strIn!=10)