java中不常用的语法
双花括号初始化
有时候写测试代码,需要新建hashmap或者list并赋值的时候,可以用双花括号初始化简化代码,但是据说有内存泄漏的风险,所以测试以外不要用
Set<String> countries = new HashSet<String>() {
{
add("India");
add("USSR");
add("USA");
}
};
初始化内部类
OuterClass outerObject = new OuterClass();
OuterClass.InnerClass innerObject = outerObject.new InnerClass();
初始化静态内部类
StaticNestedClass staticNestedObject = new StaticNestedClass();
List和Array转换
// List -> Array
Foo[] array = list.toArray(new Foo[0]);
// Array -> List
Arrays.asList(new String[]{"1","2"})
// 用一个值覆盖array中的所有元素
Arrays.fill(array, -1);
reference
- Java Double Brace Initialization
- Don’t use the double-brace initialization trick – Jesper de Jong
- Nested Classes (The Java™ Tutorials > Learning the Java Language > Classes and Objects)
- Convert list to array in Java - Stack Overflow)
- How to initialize all the elements of an array to any specific value in java - Stack Overflow)
Updated: 2023-09-03 13:31
Created: 2023-02-18 20:00