看看代碼哪里錯了
public class HelloWorld {
? ? public static void main(String[] args) {
? ? ? ? // Java文件名
String fileName = "HelloWorld.java";?
? ? ? ? // 郵箱
String email = "[email protected]";
// 判斷.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("郵箱格式無效");
}
}
}
2017-05-16
我咋沒想到用substring(index+1);
2017-02-12
復制下面這個試試:
2017-02-11
要獲取后綴的話直接用?String prefix = fileName.substring(index+1)就可以了呀。如果調用length()方法記得方法名后不能掉了小括號
2017-02-11
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());
可以大慢一點,有錯下自己看看能不能找出來,不行再發出來。而且編譯器自己要報錯呀
2017-02-11
String prefix =new fileName.substring(index + 1,fileName.length());把這句改過了還是不行
? ? ? ??