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

为什么 走得是 else 不是if么

package Like;


public class Test {

    public static void main(String[] args) {

        // Java文件名

    String fileName = "HelloWorld.java"; 

        // 邮箱

String email = "laurenyang@imooc.com";

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

        /*

        参考步骤:

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

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

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

        */

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

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

        

        // 获取文件的后缀

String prefix = fileName.substring(index);

        

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

if ( prefix.equals("java") && index>1  ) {

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("邮箱格式无效");

}

}

}


正在回答

2 回答

我发现问题了,你获取下来的是“.java”,而不是"java"

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

这样写就好了,

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

心若寒 提问者

非常感谢!
2016-01-28 回复 有任何疑惑可以回复我~

package com.helloword;

public class hello

{

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+1,fileName.length());

// System.out.println(prefix);

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

if (index!=-1 && index!=0 && 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("邮箱格式无效");

}

}

}

这是我的代码,我不知道你说的是哪个IF,你参考下吧

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

举报

0/150
提交
取消

为什么 走得是 else 不是if么

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