[b]Java 大括号语法糖[/b]
Java 的大括号(‘{’ ,curly brace)除了必要的语法规定外,
其更主要的是使代码简洁,易读。
[b]1. 作用域[/b]
在不同的代码位置有不同的叫法,如静态域,实例域等
// 静态域
static{
// 各种初始化等
}
// 叉叉域,让s在自己的域中,互不干涉。
{String s = "1";}
{String s = "2";}
[b]2. 建数组[/b]
String[] s = {"1","2","3"};
String[][] s = {{"1","2"},{"3","4"}};
[b]3. 匿名类[/b]
//new class-name ( [ argument-list ] ) { class-body }
//new interface-name () { class-body }
new Thread(){
public void run(){
}
}.start();
[b]4. 双括号[/b]
双括号"{{}}",用来初始化,使代码简洁易读。
第一次括号是建个匿名类,第二层建个实例域执行代码。
// 正常的是这样
private static final Set<String> CODE = new HashSet<String>();
static {
CODE.add("1");
CODE.add("2");
}
// 可以这样
private static final Set<String> CODE = new HashSet<String>(){{
add("1");
add("2");
}};
// 层次多点的
private static final Set<List<String>> TREE = new HashSet<List<String>>(){{
add(new ArrayList<String>() {{
add("1");
add("2");
}});
add(new ArrayList<String>() {{
add("3");
add("4");
}});
add(new ArrayList<String>() {{
add("5");
add("6");
}});
}};