import java.util.*;
public class HelloWorld{
public static void main(String []args){
static String[] str={"one","two"};
Date date =new Date();
Calendar cal = Calendar.getInstance();
String year = "2018";
String month ="4";
int day =10;
cal.set(Integer.parseInt(year),Integer.parseInt(month),day);
System.out.println(cal.get(Calendar.DAY_OF_WEEK));
// etc.
}
}
错误讯息:
错误:非法开始表达
static String [] str = {" one"," two"};
答案 0 :(得分:6)
这是无效的语法。您不会将static
修饰符应用于局部变量。删除static
。
如果str
是一个类变量,那么在方法之外声明它:
public class HelloWorld{
static String[] str={"one","two"};
静态是类型成员(接口,类,枚举......)的概念。它允许您仅使用类名引用变量,在本例中为HelloWorld.str
)。当变量属于局部范围时,就像在方法体中一样,它不能声明为静态,因为它不是类的成员。
答案 1 :(得分:0)
一个类可以有静态成员,但是一个方法不能包含静态变量。
您可以将static String[] str={"one","two"};
移到main(..)
的声明之上,这会将其移到类的范围内。
答案 2 :(得分:0)
有几种变量:
本地变量不能是static
,只有字段可以是static
。静态字段不属于任何实例,它们属于该类。
在这种情况下,您可以将String[] str
设置为类成员:
static String[] str={"one","two"};
public static void main(String []args){
// use str
}
答案 3 :(得分:-1)
静态成员是类的一部分..您不能在方法中声明静态变量。
应该是这样的
Class Helloworld { static String [] a = {“a”,“b”};
public static void main(String args){
}