package com.daemon.test;import java.util.*;public class ScannerTest
{
public ScannerTest(){} public static void main(String[] args){
Scanner sc=new Scanner();
System.out.print("请输入一个数字: ");
int num=sc.nextInt();
System.out.println("num: "+num);
}
}终端运行:
javac -d . ScannerTest.java
出现的结果是:
----------
1. ERROR in ScannerTest.java (at line 10)
        Scanner sc=new Scanner();
        ^^^^^^^
Scanner cannot be resolved to a type
----------
2. ERROR in ScannerTest.java (at line 10)
        Scanner sc=new Scanner();
                       ^^^^^^^
Scanner cannot be resolved to a type
----------
2 problems (2 errors)
以上是在linux的终端运行的,命令是bash
用户的.bash_profile里的java环境变量配置是正确的
出现这样的状况是为什么、为什么、为什么呢?俺很纳闷...

解决方案 »

  1.   

    java.util.Scanner 没有无参构造方法
      

  2.   

    这样:
    Scanner sc=new Scanner(System.in);
      

  3.   

    问题出在Scanner sc=new Scanner(); 你没有表示数据源参数,sc 不知道从那里读数据,你是从标准输入设备读入数据的,所以你应该这样写:Scanner sc=new Scanner(system.in); system.in表示标准输入设备。
      

  4.   

    呵呵  自己总算解决了  
    帖子里的Scanner sc=new Scanner();是我发帖子的时候忘记加参数System.in了
    问题的根本是.bash_profile文件里的PATH=$PATH:xxx:xxx:xxx这样的话,读出的版本是该系统另外一个1.4版本的JDK了,改成PATH=xxx:xxx:$PATH就可以读1.5这个版本的JDK了...在.bash_profile里JAVA_HOME=1.5那个版本的路径,而全局配置里应该有个1.4的路径
    多谢各位了...