我输入[email protected]为什么我打印的结果是false,一个整形数呢?谢谢
public class Effiacy {
String[] sMail={"@","."};
public boolean isMail(String sPara)
{
for(int i=0;i<sMail.length;i++)
{
if(sPara.indexOf(sMail[i])==-1) return false;
}
return true;
}
public static void main(String[] args) {
// TODO: Add your code here
Effiacy eff=new Effiacy();
String str=null;
try
{
str=Integer.toString(System.in.read());
}
catch(Exception e)
{
e.printStackTrace();
}
if(eff.isMail(str))
System.out.println("true");
else
System.out.println("false");
System.out.println(str);
}
}
public class Effiacy {
String[] sMail={"@","."};
public boolean isMail(String sPara)
{
for(int i=0;i<sMail.length;i++)
{
if(sPara.indexOf(sMail[i])==-1) return false;
}
return true;
}
public static void main(String[] args) {
// TODO: Add your code here
Effiacy eff=new Effiacy();
String str=null;
try
{
str=Integer.toString(System.in.read());
}
catch(Exception e)
{
e.printStackTrace();
}
if(eff.isMail(str))
System.out.println("true");
else
System.out.println("false");
System.out.println(str);
}
}
public class Effiacy {
String[] sMail={"@","."};
public boolean isMail(String sPara)
{
for(int i=0;i<sMail.length;i++)
{
if(sPara.indexOf(sMail[i])==-1) return false;
}
return true;
}
public static void main(String[] args) {
// TODO: Add your code here
Effiacy eff=new Effiacy();
String str=null;
try
{
BufferedReader in =
new BufferedReader(
new InputStreamReader(System.in));
str = in.readLine() ; }
catch(Exception e)
{
e.printStackTrace();
}
if(eff.isMail(str))
System.out.println("true");
else
System.out.println("false");
System.out.println(str);
}
}
其实判断isMail不需要这么麻烦,用正则表达式就可以了.import java.io.*;
public class Effiacy {
String[] sMail={"@","."};
private static BufferedReader in;
public boolean isMail(String sPara){
for(int i=0;i<sMail.length;i++){
if(sPara.indexOf(sMail[i])==-1) return false;
}
return true;
}
public static void main(String[] args) {
// TODO: Add your code here
Effiacy eff=new Effiacy();
try
{
in = new BufferedReader(new InputStreamReader(System.in));
String sr =in.readLine();
System.out.println(eff.isMail(sr));
System.out.println(sr);
in.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
}
public class Effiacy {
String[] sMail={"@","."};
public boolean isMail(String sPara)
{
for(int i=0;i<sMail.length;i++)
{
if(sPara.indexOf(sMail[i])==-1) return false;
}
return true;
}
public static void main(String[] args) {
// TODO: Add your code here
Effiacy eff=new Effiacy();
String str=null;
try
{
BufferedReader cin = new BufferedReader( new InputStreamReader( System.in ) );
str = cin.readLine(); //str=System.in.toString();
// str=System.in.read();
}
catch(Exception e)
{
e.printStackTrace();
}
if(eff.isMail(str))
System.out.println("true");
else
System.out.println("false");
System.out.println(str);
}
}
这样就好了
你读的是一个字节,不是一行输入
try{
BufferedReader input = new BufferedReader(new InputStreamReader(System.in));
str=input.readLine();
}