Java新手,请耐心等待我!
我能知道为什么这是错的吗? 声明地图hashmap时没有错误,但是当我尝试用一些对填充它们时出错 如果我在构造函数中填充它们,它不会出错。
import java.util.*;
public class Test
{
static String pos_Let ; //letter coordinate for map
static int pos_Num; // number coordinate for map
static int pos_LetNum ; //number reference of letter from HashMap let
Map o = new HashMap ();
o.put(6, "O");
o.put(7, "O");
o.put(9, "O");
o.put(10, "O");
o.put(12, "O");
Hashtable p = new Hashtable();
p.put (10,"P");
p.put (11,"P");
}
答案 0 :(得分:3)
您在方法或静态/初始化块之外编写代码。在Java中,不允许这样做。
要进行快速测试,您可以使用main方法:
if($act=="ban"){
$ban_until = $request->input('ban_until');
if(Ragnarok::temporarilyBan($account_id,$banned_by,$ban_until,$ban_reason)){
return $redirect()->to('banlist');
}else{
return $redirect()->to('banlist')->withErrors('Failed to ban, database error');
}
}else if($act=="unban"){
if(Ragnarok::unBan($account_id,$banned_by,$ban_reason)){
return $redirect()->to('banlist');
}else{
return $redirect()->to('banlist')->withErrors('Failed to unban, database error');
}
}
如果要将地图定义为字段并初始化,可以使用构造函数或初始化块:
public static void main(String[] args) {
Map o = new HashMap ();
o.put(6, "O");
o.put(7, "O");
o.put(9, "O");
o.put(10, "O");
o.put(12, "O");
Hashtable p = new Hashtable();
p.put (10,"P");
p.put (11,"P");
}