1:elipse给main函数args参数赋值
1 public class Prog{ 2 public static void main(String[] args){ 3 int n = -1; 4 try{ 5 n = Integer.parseInt(args[0]); 6 }catch(ArrayIndexOutOfBoundsException e){ 7 System.out.println("请输入成绩"); 8 return; 9 } 10 grade(n); 11 } 12 //成绩等级计算
13 private static void grade(int n){ 14 if(n>100 || n<0) 15 System.out.println("输入无效"); 16 else{ 17 String str = (n>=90)?"分,属于A等":((n>60)?"分,属于B等":"分,属于C等"); 18 System.out.println(n+str); 19 } 20 } 21 }
解决方法:eclipse-》run configuration-》arguments 加参数
2:Java中Scanner.useDelimiter( )方法详解
转载:百度经验
Java语言中,格式化输入是通过类java.util.Scanner来完成。
默认情况下,Scanner是使用“空白”作为分隔符将输入分解为标记,
然后使用它所提供的不同的next方法将得到的标记转换为不同的类型的值。
先查看下列Java程序的运行结果
结果说明:由于Scanner对象将首先跳过输入流开头的所有空白分隔符,然后对输入流中的信息进行检查,
直到遇到空白分隔符为止;因此输入数据: zhong guoren;空白后面的字符:guoren,不会显示输出来
Scanner 将空格当作了一个分隔符,那如何将含有空格的数据输出呢?
这时就需要用Scanner.useDelimiter( )方法,可以将分隔符号修改为"回车",或者其他字符。
Delimiter英文意思为分隔符;useDelimiter( )方法默认以空格作为分隔符;当然也修改,如:
useDelimiter(","); //以','为分隔符
useDelimiter("\n"); //“\n”换行符(回车)作为输入的分隔符。
故上面的程序可以改为
这样,就可以输出含有空格的数据了