sas*_*har 1 java collections data-structures
为什么这种语法不合法..?你能否解释一下设计问题是什么,不允许HashMap像这样的声明是静态的.
static HashMap<String, String> map2 = new HashMap<String, String> ();
Run Code Online (Sandbox Code Playgroud)
sep*_*p2k 11
该声明本身就完全合法.我可以想到你会收到错误的两个原因:
java.util.HashMap(当然,在这种情况下,错误与您使用static关键字无关).static HashMap<String, String> map2 = new HashMap<String, String> ();
Run Code Online (Sandbox Code Playgroud)
如果您在类级别而不是方法中拥有此代码,则完全有效.
你在哪里这个?
更新后:
您具有在方法级别声明的变量,在方法级别不允许使用静态变量.
static变量是类变量.每班一个.因此,仅在方法内部可见的变量(在方法完成后将会死亡)变为"类级别"是没有意义的.至少Java是如何看待它的.
| 归档时间: |
|
| 查看次数: |
1368 次 |
| 最近记录: |