openjdk 11 新特性验证¶
语言新特性(String增强, Optional增强)¶
测试代码:
import java.util.Optional;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
public class TestNew{
public static void testString(){
// String增强
System.out.println(" ".isBlank());
System.out.println(" Java ".strip());
System.out.println(" Java ".stripLeading());
System.out.println("Java".repeat(3));
System.out.println("A\nB\nC".lines().count());
System.out.println("A\nB\nC".lines().collect(Collectors.toList()));
//Optional增强
var op = Optional.empty();
System.out.println(op.isEmpty());
}
public static void main(String[] args) {
System.out.println("Hello wold!");
TestNew.testString();
}
}
[root@openEuler-riscv64 example]# java TestNew
Hello wold!
true
Java
Java
JavaJavaJava
3
[A, B, C]
true
隐式编译¶
不提前编译,直接用java命令运行单个java文件:结果正常
[root@openEuler-riscv64 example]# java TestNew.java
Hello wold!
true
Java
Java
JavaJavaJava
3
[A, B, C]
true
ZGC (不支持)¶
java11引入的ZGC目前在riscv中不支持
Http客户端标准化¶
import java.net.http.*;
import java.net.URI;
import java.io.IOException;
import java.lang.InterruptedException;
public class TestHttp{
public static void testHttp(){
var request = HttpRequest.newBuilder()
.uri(URI.create("https://it.zte.com.cn/"))
.GET()
.build();
var client = HttpClient.newHttpClient();
// 同步
try{
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
}catch(IOException | InterruptedException e){
}
// 异步
client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
.thenApply(HttpResponse::body)
.thenAccept(System.out::println);
}
public static void main(String args[]){
TestHttp.testHttp();
}
}