You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Yang Jie (Jira)" <ji...@apache.org> on 2023/10/12 09:10:00 UTC
[jira] [Updated] (SPARK-45515) Use `Switch Expressions` to replace the regular `switch` statement
[ https://issues.apache.org/jira/browse/SPARK-45515?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yang Jie updated SPARK-45515:
-----------------------------
Description:
refer to [JEP 361|https://openjdk.org/jeps/361]
Example:
{code:java}
double getPrice(String fruit) {
switch (fruit) {
case "Apple":
return 1.0;
case "Orange":
return 1.5;
case "Mango":
return 2.0;
default:
throw new IllegalArgumentException();
}
} {code}
Can be changed to
{code:java}
double getPrice(String fruit) {
return switch (fruit) {
case "Apple" -> 1.0;
case "Orange" -> 1.5;
case "Mango" -> 2.0;
default -> throw new IllegalArgumentException();
};
} {code}
was:
refer to [JEP 361|https://openjdk.org/jeps/361]
Example:
```java
double getPrice(String fruit) {
// Switch statement can be replaced with enhanced 'switch'
switch (fruit) {
case "Apple":
return 1.0;
case "Orange":
return 1.5;
case "Mango":
return 2.0;
default:
throw new IllegalArgumentException();
}
}
```
Can be changed to
```java
double getPrice(String fruit) {
return switch (fruit) {
case "Apple" -> 1.0;
case "Orange" -> 1.5;
case "Mango" -> 2.0;
default -> throw new IllegalArgumentException();
};
}
```
> Use `Switch Expressions` to replace the regular `switch` statement
> ------------------------------------------------------------------
>
> Key: SPARK-45515
> URL: https://issues.apache.org/jira/browse/SPARK-45515
> Project: Spark
> Issue Type: Sub-task
> Components: Spark Core, SQL
> Affects Versions: 4.0.0
> Reporter: Yang Jie
> Priority: Major
>
> refer to [JEP 361|https://openjdk.org/jeps/361]
>
> Example:
> {code:java}
> double getPrice(String fruit) {
> switch (fruit) {
> case "Apple":
> return 1.0;
> case "Orange":
> return 1.5;
> case "Mango":
> return 2.0;
> default:
> throw new IllegalArgumentException();
> }
> } {code}
> Can be changed to
> {code:java}
> double getPrice(String fruit) {
> return switch (fruit) {
> case "Apple" -> 1.0;
> case "Orange" -> 1.5;
> case "Mango" -> 2.0;
> default -> throw new IllegalArgumentException();
> };
> } {code}
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org