一, 邮箱格式需满足以下要求
1. 有且只有一个 @
2. @不能放在开头, 也不能放在结尾
3. @之后必须有.
4. @之前或之后不能紧跟.
5. @之前要有 6 个字符
6. 以 com,org,cn,net 结尾
二, 代码实现
1. 实现代码
- package homework3;
- // 邮箱检验是否合格
- public class CheckEmail {public boolean isEmail(String email) {
- // 判断是否为空邮箱
- int k = 0;
- if(email == null) {
- return false;
- }
- /*
- * 单引号引的数据 是 char 类型的
- 双引号引的数据 是 String 类型的
- 单引号只能引一个字符
- 而双引号可以引 0 个及其以上 *
- */
- // 判断是否有仅有一个 @且不能在开头或结尾
- if(email.indexOf("@")> 0 && email.indexOf('@') == email.lastIndexOf('@') && email.indexOf('@') <email.length()-1) {
- k++;
- }
- // 判断 "@" 之后必须有 "." 且不能紧跟
- if(email.indexOf('.',email.indexOf('@'))> email.indexOf('@')+1 ) {
- k++;
- }
- // 判断 "@" 之前或之后不能紧跟 "."
- if(email.indexOf('.') <email.indexOf('@')-1 || email.indexOf('.')> email.indexOf('@')+1 ) {
- k++;
- }
- //@之前要有 6 个字符
- if(email.indexOf('@')> 5 ) {
- k++;
- }
- if(email.endsWith("com") || email.endsWith("org") || email.endsWith("cn") ||email.endsWith("net")) {
- k++;
- }
- if(k == 5) {
- return true;
- }
- return false;
- }
- }
2. 测试代码
- package homework3;
- import java.util.Scanner;
- public class EmailTest {
- public static void main(String[] args) {
- do
- { Scanner sc = new Scanner(System.in);
- System.out.println("请输入你的邮箱:");
- String str = sc.nextLine(); // 读取字符串型输入
- CheckEmail email = new CheckEmail();
- boolean result = email.isEmail(str);
- if(result) {
- System.out.println("邮箱地址合法");
- }else {
- System.out.println("邮箱地址不合法");
- }
- System.out.println(" ");
- }
- while(true);
- }
- }
3. 测试结果
三, 总结
这是我在博客园上的第一篇文章, 没有啥技术含量, 但是却见证着我的学习与成长.
本人 Java 小白一枚, 正在努力追赶, 希望有志同道合的小伙伴可以共勉, 一起努力学习, 一起进步.
来源: https://www.cnblogs.com/zjf1665119803/p/9030537.html