为什么我的nextInt会报错??

ftt0524 2012-06-14 05:00:22
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18岁?"+
(ageOfStudent>=18?"yes":"no"));

}
}
...全文
757 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
zqfddqr 2012-06-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

引用楼主 的回复:
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.pri……
[/Quote]9494
ceclinux 2012-06-17
  • 打赏
  • 举报
回复
如果你不import一个包的话,java编译器是不知道其他的包的(除了java.lang),只知道默认的本地包。也就是你写的Scanner类存在的包。
另外,即使你导入其他地方的包的话,编译器还是优先认为这个Scanner是本地包中的。
防止混淆的最好办法就是换个名字啦
a363722188 2012-06-15
  • 打赏
  • 举报
回复
又看懂一道!!
dai_ 2012-06-15
  • 打赏
  • 举报
回复
结贴吧
Sad4This 2012-06-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
引用楼主 的回复:
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.print……
[/Quote]
正解
a395885670 2012-06-15
  • 打赏
  • 举报
回复
类重名 覆盖掉Scanner类 又没有自己重写nextInt方法 所以报错
sffx123 2012-06-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
引用楼主 的回复:
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.print……
[/Quote]+1,楼主说的报错是指编译过程中报错了吧,你把java提供的类给覆盖掉了,还没有提供nextInt()的方法实现,写类的时候别跟java自定义的类重名。
sxjccj 2012-06-15
  • 打赏
  • 举报
回复
12楼正解,引用import java.util.*; 还有就是new 出来的要有参数Scanner s = new Scanner(System.in) ,System.in.应该是告诉系统应该从DOS窗口读数据的,你不写这,应该会出错的
xlhb 2012-06-15
  • 打赏
  • 举报
回复
类名最好不要与API类名相同,如要使用,使用全路径。

public static void main(String[] args) {
java.util.Scanner scanner = new java.util.Scanner(System.in);

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18岁?" + (ageOfStudent >= 18 ? "yes" : "no"));
ZZZ5512536 2012-06-15
  • 打赏
  • 举报
回复
貌似两个地方有问题。
Scanner scanner= new Scanner(System.in); //缺参数
还有类名不要起与API里相同的类名。

WinterFall 2012-06-15
  • 打赏
  • 举报
回复
你Scanner调用了自己写的Scanner类,里面没有nextInt()方法,要么把类名改了导入java.util.Scanner类,要么

public class Scanner {
public static void main(String[]args){
java.util.Scanner scanner= new java.util.Scanner();
System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18岁?" + (ageOfStudent >= 18? "yes" : "no"));
}
}
海湾逐浪 2012-06-14
  • 打赏
  • 举报
回复
import java.util.Scanner;
public class ScannerDemo {


public static void main(String[]args){
Scanner scanner= new Scanner(System.in);

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18岁?"+
(ageOfStudent>=18?"yes":"no"));

}
}
shenhua 2012-06-14
  • 打赏
  • 举报
回复
2楼正解。
newbie_Lee 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

引用楼主 的回复:
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.pri……
[/Quote]

+ 1
FFF9527 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
public class Scanner {


public static void main(String[]args){
Scanner scanner= new Scanner();

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18……
[/Quote]
类名最好不要与API类名相同,如要使用,使用全路径。

public static void main(String[] args) {
java.util.Scanner scanner = new java.util.Scanner(System.in);

System.out.print("请输入学生年龄:");
int ageOfStudent = scanner.nextInt();
System.out.println("该生是否满18岁?" + (ageOfStudent >= 18 ? "yes" : "no"));
}
永远的小鱼 2012-06-14
  • 打赏
  • 举报
回复
nextInt() 是个什么东西

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧