jdk10新特性--卷?
作者:互联网
var 局部类型推断
package jdk10;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Stream;
/**
* 局部类型推断
* 仅限带有初始化的程序的局部变量。
* for 循环或者增强for 循环中。
* for 循环中的声明
*/
public class VarDemo {
public static void main(String[] args) {
var hashMap = new HashMap<String, Object>();
hashMap.put("name", "fly");
var str = "hello java 10";
var stream = Stream.of(1, 2);
var list = new ArrayList<String>();
var l = List.of(1, 2, 3);
for (int i = 0; i < l.size(); i++) {
System.out.println(l.get(i));
}
for (Integer integer : l) {
System.out.println(integer);
}
}
}
Unicode 语言标签扩展
package jdk10;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Currency;
import java.util.Locale;
/**
* Unicode 语言标签扩展
*/
public class UnicodeDemo {
public static void main(String[] args) {
Currency chinaCurrency = Currency.getInstance(Locale.CHINA);
Currency usCurrency = Currency.getInstance(Locale.US);
System.out.println("本地货币:" + chinaCurrency); // 本地货币:CNY
System.out.println("US.货币:" + usCurrency); // US.货币:USD
String displayName = Locale.getDefault().getDisplayName();
String displayCountry = Locale.getDefault().getDisplayCountry();
String displayLanguage = Locale.getDefault().getDisplayLanguage();
System.out.println("本地名称:" + displayName); //本地名称:中文 (简体,中国)
System.out.println("本地语言:" + displayLanguage);//本地语言:中文
System.out.println("本地国家:" + displayCountry);//本地国家:中国
int firstDayOfWeek = Calendar.getInstance().getFirstDayOfWeek();
System.out.println("本地每周第一天:" + firstDayOfWeek);//本地每周第一天:1
}
}
Collection
package jdk10;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
public class CollectionDemo {
// 通过 Collection.copyOf 复制得到一个不可改变集合,即使原来的集合元素发生了变化也不会有影响
@Test
public void copyof(){
var list = new ArrayList<String>();
list.add("name");
list.add("age");
// 不可改变集合
List<String> copyList = List.copyOf(list);
list.add("copy");
System.out.println(copyList); //[name, age]
}
// 获取到 optional 中的 value , 但是如果 value 为 null ,就会抛出异常
@Test
public void orElseThrow(){
String str = null;
String s = Optional.of(str).orElseThrow();
}
// Collectors 可以直接指定收集的集合为不可变集合
@Test
public void toUnmodifiable(){
var list = new ArrayList<String>();
list.add("name");
list.add("age");
List<String> list1 = list.stream().collect(Collectors.toUnmodifiableList());
Set<String> set = list.stream().collect(Collectors.toUnmodifiableSet());
}
}
标签:java,--,list,System,特性,jdk10,util,println,import 来源: https://www.cnblogs.com/fly-book/p/16202485.html