优化这段代码 import java.util.Scanner; public class KEY { public static void ISNOT(String name) { if(name.contains("!")|name.contains("@")|name.contains("#")|name.length()>=8|name.contains("!")){ System.out.println("注册失败!请重启程序!!!"); }else{ System.out.println("注册成功!!!您的用户名是"+name); } } public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("你好 ,用户 ,想要注册一个账号吗?"); System.out.println("请输入用户名:(不超过8个字符,不含有 ! @ # 字符):"); String name=sc.next(); ISNOT(name); } }
时间: 2023-04-08 19:00:28 浏览: 51
这段代码可以进行如下优化:
import java.util.Scanner;
public class KEY {
public static void ISNOT(String name) {
if(name.matches(".*[!@#$%^&*()].*")) {
System.out.println("输入的字符串中包含非法字符!");
} else {
System.out.println("输入的字符串合法。");
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String name = scanner.nextLine();
ISNOT(name);
}
}
优化的主要点有:
1. 使用正则表达式判断字符串中是否包含非法字符,避免使用多个contains方法。
2. 将判断字符串合法性的代码封装成一个方法,提高代码的可读性和复用性。
3. 在主方法中使用Scanner类获取用户输入的字符串,增加代码的交互性。
相关问题
import java.util.Scanner; public class Test1 { 晋涛 public static void main(String[] args) { Sy
import java.util.Scanner;
public class Test1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入您的姓名:");
String name = scanner.nextLine();
.out.println("您好," + name + "!");
}
}
这段代码是一个简单的Java程序,它使用了Java标准库中的Scanner类来实现用户输入和输出。首先,我们通过创建Scanner对象来获取用户的输入。然后,使用nextLine()方法读取用户输入的姓名,并将其存储在name变量中。最后,通过System.out.println()方法将问候语和用户的姓名输出到控制台。
import java.util.Scanner; package base; public class scaner { public static void main(String[] args) { } } 改错
在代码的开头处移除多余的import语句,将package语句放在import语句后面,同时将类名从"scaner"改为"Scanner",修正后的代码如下:
```java
package base;
import java.util.Scanner;
public class ScannerExample {
public static void main(String[] args) {
// 在这里编写你的代码
}
}
```
请注意,你需要在`main`方法中编写你的代码,这只是一个修正后的代码框架。