问答详情
源自:2-3 Java 中 String 类的常用方法 Ⅰ

String类的常用方法二中,双引号跟单引号的区别

String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

        

        // 出现次数

int num = 0;

        

         // 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数

for (int i=0 ; i<s.length();i++ )

{

            // 获取每个字符,判断是否是字符a

if (s.charAt(i) =='a'){

                // 累加统计次数

num++; 

}

}

System.out.println("字符a出现的次数:" + num);

这段代码中 无法使用双引号"a";


但是!!!!!!!!

为什么另一段代码

String fileName = "HelloWorld.java"; 

        // 邮箱

String email = "laurenyang@imooc.com";

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

        

        /*参考步骤:

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

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

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

*/        

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

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

        

        // 获取文件的后缀

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

        

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

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

           if(index == fileName.length()-5){

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

}


@符号可以使用双引号????

提问者:流沙河的水妖 2017-04-17 00:15

个回答

  • 木牙米z
    2017-04-17 00:38:23
    已采纳

    因为charAt()函数的参数列表是一个字符而不是字符串,其实单个的字符是可以用双引号来使用的,但是这个函数指定的参数列表的类型是字符型,所以你如果用双引号的话就会报错,提示的是传参类型错误.