String[] str=new String[4];
str[0]="hello";
str[1]="love";
str[2]="ting";
str[3]="abc";
总提示错误except']',知道的请给我解释解释.谢谢.
这个程序要实现的功能是用户输入一字符串,如果在数组中有匹配的就输出"done",没有就输出"nothing".
import java.io.*;
import java.util.*;
public class inputMethed{
public static void main(String args[]){
inputMethed in=new inputMethed();
Scanner sc=new Scanner(System.in);
System.out.println("************************");
System.out.println("a simple input program.");
System.out.println("************************");
if(sc.hasNextLine())
{
String s=sc.nextLine();
in.match(s);
}
}
/* public void strLibrary(){
String str[]=new String[4];
str[0]="hello";
str[1]="love";
str[2]="ting";
str[3]="abc";
}*/
public void match(String s){
for(int i=0;i<strLibrary.str.length();i++)
if(s==str[i])
System.out.println("done.");
else
System.out.println("nothing.");
}
}
class strLibrary{
// String str[]={"hello","long","love","ting"};
String[] str=new String[4]; //就是这几行
str[0]="hello";
str[1]="love";
str[2]="ting";
str[3]="abc";
}
修改了一下,没成功,以下是修改后的:
import java.io.*;
import java.util.*;
public class inputMethed{
public static void main(String args[]){
inputMethed in=new inputMethed();
Scanner sc=new Scanner(System.in);
System.out.println("************************");
System.out.println("a simple input program.");
System.out.println("************************");
if(sc.hasNextLine())
{
String s=sc.nextLine();
in.match(s);
}
}
public void match(String s){
strLibrary sl=new strLibrary();
for(int i=0;i<sl.str.length;i++)
if(s==str[i]) //系统提示错在这一行,提示内容为找不到符号,
{ //换成表达式s.equals(str[i])后还是一样,不知道为什么
System.out.println("done.");
System.exit(0);
}
System.out.println("nothing.");
}
}
class strLibrary{
String[] str=new String[4];
public strLibrary()
{
str[0]="hello";
str[1]="love";
str[2]="ting";
str[3]="abc";
}
}