为了账号安全,请及时绑定邮箱和手机立即绑定

看看代码哪里错了

public class HelloWorld {

    public static void main(String[] args) {

        // Java文件名

String fileName = "HelloWorld.java"; 

        // 邮箱

String email = "laurenyang@imooc.com";

// 判断.java文件名是否正确:合法的文件名应该以.java结尾

        /*

        参考步骤:

        1、获取文件名中最后一次出现"."号的位置

        2、根据"."号的位置,获取文件的后缀

        3、判断"."号位置及文件后缀名

        */

        //获取文件名中最后一次出现"."号的位置

int index = new fileName.lastIndexOf(".");

        

        // 获取文件的后缀

String prefix =new fileName.substring[index+1,fileName.length);

        

// 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"

if (   index!=0 && index!=-1 && prefix.equals("java")                             ) {

System.out.println("Java文件名正确");

} else {

System.out.println("Java文件名无效");

}


        // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前

         /*

        参考步骤:

        1、获取文件名中"@"符号的位置

        2、获取邮箱中"."号的位置

        3、判断必须包含"@"符号,且"@"必须在"."之前

        */

   // 获取邮箱中"@"符号的位置

int index2 = email.indexOf("@");

        

        // 获取邮箱中"."号的位置

int index3 = email.indexOf('.');

        

// 判断必须包含"@"符号,且"@"必须在"."之前

if (index2 != -1 && index3 > index2) {

System.out.println("邮箱格式正确");

} else {

System.out.println("邮箱格式无效");

}

}

}


正在回答

5 回答

我咋没想到用substring(index+1);

0 回复 有任何疑惑可以回复我~

复制下面这个试试:

public class HelloWorld {
    public static void main(String[] args) {
        // Java文件名
  String fileName = "HelloWorld.jav"; 
        // 邮箱
  String email = "laurenyang@imooc.com";
  
  // 判断.java文件名是否正确:合法的文件名应该以.java结尾
        /*
        参考步骤:
        1、获取文件名中最后一次出现"."号的位置
        2、根据"."号的位置,获取文件的后缀
        3、判断"."号位置及文件后缀名
        */
        //获取文件名中最后一次出现"."号的位置
  int index = fileName.lastIndexOf('.');
        
        // 获取文件的后缀
  String prefix = fileName.substring(index);
        
  // 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"
  if (index > 0 && prefix == "java") {
   System.out.println("Java文件名正确");
  } else {
   System.out.println("Java文件名无效");
  }

        // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前
         /*
        参考步骤:
        1、获取文件名中"@"符号的位置
        2、获取邮箱中"."号的位置
        3、判断必须包含"@"符号,且"@"必须在"."之前
        */
     // 获取邮箱中"@"符号的位置
  int index2 = email.indexOf('@');
        
        // 获取邮箱中"."号的位置
  int index3 = email.indexOf('.');
        
  // 判断必须包含"@"符号,且"@"必须在"."之前
  if (index2 != -1 && index3 > index2) {
   System.out.println("邮箱格式正确");
  } else {
   System.out.println("邮箱格式无效");
  }
 }
}


1 回复 有任何疑惑可以回复我~

要获取后缀的话直接用 String prefix = fileName.substring(index+1)就可以了呀。如果调用length()方法记得方法名后不能掉了小括号

0 回复 有任何疑惑可以回复我~

int index = new fileName.lastIndexOf("."); --》 int index =  fileName.lastIndexOf(".");

String prefix =new fileName.substring[index+1,fileName.length); ==》 String prefix = fileName.substring(index+1,fileName.length());

可以大慢一点,有错下自己看看能不能找出来,不行再发出来。而且编译器自己要报错呀


0 回复 有任何疑惑可以回复我~

String prefix =new fileName.substring(index + 1,fileName.length());把这句改过了还是不行

        


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

看看代码哪里错了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信