enum samples for bael6145 implementing toString() for enums (#13407)

* enum samples for bael6145 implementing toString() for enums

* updates from code review:
FastFood1: return empty string instead of null when no matching enum found
FastFood3: make enum name variable final

* make member variable private final in FastFoot3 enum
remove trailing comma in FastFoot2 enum
This commit is contained in:
IfThen2 2023-03-02 13:15:38 -07:00 committed by GitHub
parent 184cdff59d
commit 6624802960
3 changed files with 82 additions and 0 deletions

View File

@ -0,0 +1,25 @@
package com.baeldung.enumtostring;
public enum FastFood1 {
PIZZA,
BURGER,
TACO,
CHICKEN,
;
@Override
public String toString() {
switch (this) {
case PIZZA:
return "Pizza Pie";
case BURGER:
return "Cheese Burger";
case TACO:
return "Crunchy Taco";
case CHICKEN:
return "Fried Chicken";
default:
return "";
}
}
}

View File

@ -0,0 +1,28 @@
package com.baeldung.enumtostring;
public enum FastFood2 {
PIZZA {
@Override
public String toString() {
return "Pizza Pie";
}
},
BURGER {
@Override
public String toString() {
return "Cheese Burger";
}
},
TACO {
@Override
public String toString() {
return "Crunchy Taco";
}
},
CHICKEN {
@Override
public String toString() {
return "Fried Chicken";
}
}
}

View File

@ -0,0 +1,29 @@
package com.baeldung.enumtostring;
public enum FastFood3 {
PIZZA("Pizza Pie"),
BURGER("Cheese Burger"),
TACO("Crunchy Taco"),
CHICKEN("Fried Chicken"),
;
private final String prettyName;
FastFood3(String prettyName) {
this.prettyName = prettyName;
}
FastFood3 fromString(String prettyName) {
for (FastFood3 f : values()) {
if (f.prettyName.equals(prettyName)) {
return f;
}
}
return null;
}
@Override
public String toString() {
return prettyName;
}
}