Pleiades Eclipse 2020-03 릴리스 ~ Java 14 새로운 기능을 사용해보십시오!
Pleiades All in One 다운로드
ht tp // // rmd c. 오 sd. jp/
Java 14 프로젝트 만들기
디폴트로 설정 끝난 Java 6, 7, 8, 11, 14 에서 14 를 선택하기만 하면 됩니다.
Java 다운로드, 설치 경로 설정 등은 필요하지 않습니다.
비표준 미리 보기 기능을 사용하려면 프로젝트의 속성을 설정합니다.
프로젝트 > 마우스 오른쪽 버튼 > 속성
Java 코드 텍스트 붙여넣기 편리한 기능
이것은 옛날부터의 기능입니다만, 패키지 익스플로러의 트리의 src 부하에 파일이 아니고, Java 의 소스 코드 텍스트를 직접 붙여 넣는 것만으로, 이하의 동작이 되어 즐겁습니다. 오른쪽 클릭하여 신규 > 클래스 > 대화상자라든지 불필요합니다.
Java 14 새로운 기능
switch, 레코드, 텍스트 블록, 패턴 매치의 샘플 코드입니다.
붙여 넣어 시험하기 쉽도록 1 클래스로 하고 있습니다.
import static java.lang.System.*;
import java.time.Month;
class Demo {
public static void main(String[] args) {
//--------------------------------------------------
// switch (Java 14 標準)
{
// 複数ラベル - 結果: "Hello\nWorld\n"
var i = 1;
switch (i) {
case 0, 1, 2: out.println("Hello");
default : out.println("World");
}
}
{
// アロー - 結果: Hello
var i = 2;
switch (i) {
case 2 -> out.println("Hello");
default -> out.println("World");
}
}
{
// switch 式 - 結果: 大の月
var month = Month.MARCH;
String day = switch(month) {
case APRIL, FEBRUARY, JUNE, NOVEMBER, SEPTEMBER -> "小の月";
case AUGUST, DECEMBER, JANUARY, JULY, MARCH, MAY, OCTOBER -> "大の月";
};
out.println(day);
}
//--------------------------------------------------
// record (Java 14 プレビュー)
{
// インナー record 定義
record Point(int x, int y) {}
// getter 自動生成 - 結果: 10
out.println(new Point(10, 20).x());
// toString 自動生成 - 結果: Point[x=10, y=20]
out.println(new Point(10, 20));
// equals 自動生成 - 結果: true
out.println(new Point(10, 20).equals(new Point(10, 20)));
}
//--------------------------------------------------
// テキストブロック (Java 14 セカンドプレビュー)
{
// 結果: "Hello\n World"
String s = """
Hello
World
""";
System.out.println(s);
}
//--------------------------------------------------
// instanceof パターンマッチ (Java 14 プレビュー)
{
// instanceof で代入 - 結果: 3
Object object = 1;
if (object instanceof Integer i) {
out.println(i + 2);
}
// 型と値の複合条件
if (object instanceof Integer i && i == 1) {
out.println(i);
}
}
//--------------------------------------------------
// NullPointerException 詳細出力 (Java 14 標準)
// 実行構成の VM 引数に -XX:+ShowCodeDetailsInExceptionMessages 追加
// 結果:
/*
Exception in thread "main" java.lang.NullPointerException:
Cannot invoke "String.length()" because "s" is null
at Demo.main(Demo.java:78)
*/
{
String s = null;
s.length();
}
}
}
Reference
이 문제에 관하여(Pleiades Eclipse 2020-03 릴리스 ~ Java 14 새로운 기능을 사용해보십시오!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/cypher256/items/5e03e8ed552f493824d5
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
import static java.lang.System.*;
import java.time.Month;
class Demo {
public static void main(String[] args) {
//--------------------------------------------------
// switch (Java 14 標準)
{
// 複数ラベル - 結果: "Hello\nWorld\n"
var i = 1;
switch (i) {
case 0, 1, 2: out.println("Hello");
default : out.println("World");
}
}
{
// アロー - 結果: Hello
var i = 2;
switch (i) {
case 2 -> out.println("Hello");
default -> out.println("World");
}
}
{
// switch 式 - 結果: 大の月
var month = Month.MARCH;
String day = switch(month) {
case APRIL, FEBRUARY, JUNE, NOVEMBER, SEPTEMBER -> "小の月";
case AUGUST, DECEMBER, JANUARY, JULY, MARCH, MAY, OCTOBER -> "大の月";
};
out.println(day);
}
//--------------------------------------------------
// record (Java 14 プレビュー)
{
// インナー record 定義
record Point(int x, int y) {}
// getter 自動生成 - 結果: 10
out.println(new Point(10, 20).x());
// toString 自動生成 - 結果: Point[x=10, y=20]
out.println(new Point(10, 20));
// equals 自動生成 - 結果: true
out.println(new Point(10, 20).equals(new Point(10, 20)));
}
//--------------------------------------------------
// テキストブロック (Java 14 セカンドプレビュー)
{
// 結果: "Hello\n World"
String s = """
Hello
World
""";
System.out.println(s);
}
//--------------------------------------------------
// instanceof パターンマッチ (Java 14 プレビュー)
{
// instanceof で代入 - 結果: 3
Object object = 1;
if (object instanceof Integer i) {
out.println(i + 2);
}
// 型と値の複合条件
if (object instanceof Integer i && i == 1) {
out.println(i);
}
}
//--------------------------------------------------
// NullPointerException 詳細出力 (Java 14 標準)
// 実行構成の VM 引数に -XX:+ShowCodeDetailsInExceptionMessages 追加
// 結果:
/*
Exception in thread "main" java.lang.NullPointerException:
Cannot invoke "String.length()" because "s" is null
at Demo.main(Demo.java:78)
*/
{
String s = null;
s.length();
}
}
}
Reference
이 문제에 관하여(Pleiades Eclipse 2020-03 릴리스 ~ Java 14 새로운 기능을 사용해보십시오!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/cypher256/items/5e03e8ed552f493824d5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)