import java.util错误_Java“import java.util.Scanner”无效

这是我第一次编码,所以我很抱歉,如果我让你面对面.

我想使用Scanner类来读取用户输入.但是,我收到一个错误.当我遇到这个问题时,我已停止编码,因此代码远未完成,但这就是我所拥有的:

package trigger;

import java.util.Scanner;

public class Trigger {

public static void main(String[] args) {

System.out.println("Please input known values");

Scanner input = new Scanner(System.in);

System.out.println("Angle A");

String Ain = input.next();

System.out.println("Angle B");

String Bin = input.next();

System.out.println("Angle C");

String Cin = input.next();

System.out.println("Side A");

String ain = input.next();

System.out.println("Side B");

String bin = input.next();

System.out.println("Side C");

String cin = input.next();

}

}

这会返回如下错误:

java.lang.ExceptionInInitializerError

Caused by: java.lang.RuntimeException: Uncompilable source code - cannot find symbol

symbol: class Scanner

location: class java.util

at trigger.Trigger.(Trigger.java:2)

Exception in thread "main" C:\Users\******\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java returned: 1

BUILD FAILED (total time: 0 seconds)

我在线阅读了一些内容,并了解到Scanner类仅在java 1.5及更高版本中受支持.但是,我应该有JDK 1.8.

我正在使用NetBeans IDE 8.1.

如果有人能帮助我,那将是惊人的.提前致谢!

编辑:我已确保“项目属性”中“源”下的“源/二进制格式”设置为JDK 8,但问题仍然存在.

解决方法:

尝试取消选中项目属性中的“编译保存”设置(构建 – >编译)

标签:java-util-scanner,java,netbeans,netbeans-8-1

来源: https://codeday.me/bug/20190829/1757840.html

### Java 中 `import java.util.Scanner` 的作用 在 Java 编程语言中,`import java.util.Scanner` 是用于导入标准库中的 `Scanner` 类的语句。通过这一语句,程序可以访问并利用该类的功能来实现特定的操作。具体来说,`java.util.Scanner` 是从 Java 5 开始引入的一个工具类[^1],其核心功能在于提供一种便捷的方式来解析基本类型的输入以及字符串输入。 #### 主要用途 `java.util.Scanner` 被广泛应用于处理来自不同源的数据流(如文件、网络连接或控制台)。它特别适合于读取用户从键盘输入的内容,并支持多种数据类型(整数、浮点数、字符等)的解析[^3]。 #### 基本语法结构 为了使用 `Scanner` 类,在编写代码之前需要确保已经成功导入了对应的包: ```java import java.util.Scanner; ``` 接着可以在主函数或其他适当位置初始化一个 `Scanner` 对象实例,通常会绑定到系统的标准输入流 (`System.in`) 上面以便接受终端用户的实时输入[^2]: ```java public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 接收字符串型输入 System.out.print("请输入一段文字:"); String inputString = scanner.nextLine(); System.out.println("您刚刚输入的是:" + inputString); // 关闭scanner对象释放资源 scanner.close(); } } ``` 上述例子展示了如何创建一个新的 `Scanner` 实例并将之关联至标准输入设备上,随后调用了它的成员方法 `nextLine()` 来捕获一行完整的文本信息。值得注意的一点是当完成所有的 I/O 操作之后应当显式关闭此对象以避免潜在内存泄漏风险[^4]。 另外需要注意大小写敏感问题,“util” 和 “scanner”的首字母都应该是大写的形式即正确书写应为 `import java.util.Scanner;`. ### 注意事项 如果尝试在一个静态上下文中定义局部变量级别的 `Scanner`, 可能会造成某些情况下无法正常工作或者抛出异常, 所以推荐的做法是在类级别声明此类成员变量. ```java private static final Scanner STDIN = new Scanner(System.in); ``` 这样不仅可以提高效率还可以减少重复创建销毁带来的开销. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值