java - 为什么“包日志”下划线为错误?
问题描述
您好 Stack Overflow 的用户
(快速信息:我使用 Eclipse 2018-09,我使用的是 Java 8)
我对我的编码有疑问。它有点过时(Java 8),但我要问的是为什么我的编码用红色下划线。
import javax.swing.JOptionPane;
package log;
public class Login {
public static void main(String args[]) {
String username = JOptionPane.showInputDialog("Enter your username");
String password = JOptionPane.showInputDialog("Enter your password");
if (
username != null && password != null &&
(
(username.equals("gkic17") && password.equals("irena46")) ||
(username.equals("dm") && password.equals("me21mar")) ||
(username.equals("citizenzap") && password.equals("guestboy19"))
)
)
{
JOptionPane.showMessageDialog(null, "Logged in!" );
} else {
JOptionPane.showMessageDialog(null, "Incorrect username or password! Try again later." );
}
}
}
在开头package log;
,它带有红色下划线。这是错误。
控制台错误
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
at log.Login.main(Login.java:7)
IDE 上的错误
Syntax error on token "package", import expected
(不过,我不确定它想要什么导入)
谢谢, CitizenZap
解决方案
根据创建包:
包语句(例如,包图形;)必须是源文件中的第一行。每个源文件中只能有一个包语句,它适用于文件中的所有类型。
所以你的代码应该是:
package log;
import javax.swing.JOptionPane;
public class Login {
public static void main(String args[]) {
String username = JOptionPane.showInputDialog("Enter your username");
String password = JOptionPane.showInputDialog("Enter your password");
if (username != null && password != null
&& ((username.equals("gkic17") && password.equals("irena46"))
|| (username.equals("dm") && password.equals("me21mar"))
|| (username.equals("citizenzap") && password.equals("guestboy19")))) {
JOptionPane.showMessageDialog(null, "Logged in!");
} else {
JOptionPane.showMessageDialog(null, "Incorrect username or password! Try again later.");
}
}
}
注意:注意代码风格指南,您的代码将更易于阅读和维护
推荐阅读
- c# - 在 Restful WCF Web 服务中未收到来自我的控制台的授权标头
- laravel - 如何每 40 分钟安排一次 cronjob 任务计划?
- visual-studio - Visual Studio 使用文件发布发布“额外”文件
- c++ - 关于 c++ lambda 的问题(具有非自动存储持续时间)
- java - Java SJF 抢占式 CPU 调度
- php - 我们如何创建 zend light 框架 [for api]
- c# - 'System.Nullable`1[System.Int32]' 类型的表达式不能用于'System.Int32' 类型的构造函数参数\r\n参数名称: arguments[0]
- python-3.x - 如何使变量接受字符串
- bash - 如何在 bash 循环范围内替换变量号?
- c++ - 在 C++ 中从向量中删除元素