注意输入的字符串里面可能有空格,所以要nextLine()而不是next(),其他一个个验证就好了,@要计算次数,多了少了都不行。
import java.util.Scanner;
public class eMailchecked {
public static void main(String args[]){
Scanner input=new Scanner(System.in);
String s=input.nextLine();
int countAt=0;
if(s.charAt(s.length()-1)!='m'||s.charAt(s.length()-2)!='o'||s.charAt(s.length()-3)!='c'||s.charAt(s.length()-4)!='.'){System.out.println('0');return;}
for(int i=0;i<s.length();i++){
if(s.charAt(i)=='@')countAt++;
if(countAt==2||s.charAt(i)==' '||!((s.charAt(i)<='9'&&s.charAt(i)>='1')||(s.charAt(i)<='z'&&s.charAt(i)>='a')||(s.charAt(i)<='Z'&&s.charAt(i)>='A')||s.charAt(i)=='.'||s.charAt(i)=='@'||s.charAt(i)=='_')){System.out.println('0');return;}
}
if(countAt!=1){System.out.println('0');return;}
System.out.println("1");
}
}