ИТ вести на нашенски
Важните новини от света и у нас в до 1024 байта макс!
1024 байта
Java 21 с JEP 411 pattern matching for switch

 Има 3 топ предложения за Java 21, който определено трябва да се видят.

Първото, за което може би сте чували е :

JEP 441: Pattern Matching for switch с две думи може и да почнем да ползваме switch-ове в скоро време ;) 

Пример

// As of Java 21
static String example(Object obj) {
  return switch (obj) {
   case Integer i 
-> String.format("int %d", i); case Long l
-> String.format("long %d", l); case Double d
-> String.format("double %f", d); case String s
-> String.format("String %s", s); default
-> obj.toString(); }; }
или може да има и стойности и null 
// As of Java 21
static void example(String s) {
  switch (s) {
   case null         
-> System.out.println("Oops"); case "Foo", "Bar"
-> System.out.println("Great"); default
-> System.out.println("Ok"); } }
А може да филтрираме по тип и да 
дофилтрираме по стойност с when
// As of Java 21
sealed interface CardClassification 
permits Suit, Tarot {} public enum Suit implements

CardClassification
{ CLUBS, DIAMONDS, HEARTS, SPADES }
final class Tarot 
implements CardClassification {} static void
exhaustiveSwitch(CardClassification c) { switch (c) { case Suit s when s == Suit.CLUBS -> { System.out.println("It's clubs"); } case Suit s when s == Suit.DIAMONDS -> { System.out.println("It's diamonds"); } case Suit s when s == Suit.HEARTS -> { System.out.println("It's hearts"); } case Suit s -> { System.out.println("It's spades"); } case Tarot t -> { System.out.println("It's a tarot"); } } } Тая Java не е оная Java,
ако искате повече примери да видите
мотивацията и етц цъкнете на линка горе