Java to Kotlin converter: refactoring and fixing switch conversion

#KT-5390 Fixed
This commit is contained in:
Valentin Kipyatkov
2014-07-04 23:29:52 +04:00
parent 6bd5a12498
commit 3ccd8839ff
14 changed files with 164 additions and 146 deletions
+5 -15
View File
@@ -2,21 +2,11 @@ class Test {
class object {
public fun getInt(i: Int): Int {
when (i) {
0 -> {
return 0
}
1 -> {
return 1
}
2 -> {
return 2
}
3 -> {
return 3
}
else -> {
return -1
}
0 -> return 0
1 -> return 1
2 -> return 2
3 -> return 3
else -> return -1
}
}
}
@@ -31,9 +31,7 @@ public class SwitchDemo {
print(4)
print(5)
}
5 -> {
print(5)
}
5 -> print(5)
6 -> {
print(6)
print(7)
@@ -73,12 +71,8 @@ public class SwitchDemo {
print(11)
monthString = "December"
}
12 -> {
monthString = "December"
}
else -> {
monthString = "Invalid month"
}
12 -> monthString = "December"
else -> monthString = "Invalid month"
}
System.out.println(monthString)
}
@@ -0,0 +1,12 @@
//method
void foo() {
Loop:
while(true) {
switch(take()) {
case 1: continue;
case 2: System.out.println("2"); return;
case 3: break Loop;
}
System.out.println();
}
}
@@ -0,0 +1,13 @@
fun foo() {
@Loop while (true) {
when (take()) {
1 -> continue
2 -> {
System.out.println("2")
return
}
3 -> break@Loop
}
System.out.println()
}
}
+2 -6
View File
@@ -6,12 +6,8 @@ public class SwitchDemo {
val month = 8
val monthString: String
when (month) {
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 -> {
monthString = "December"
}
else -> {
monthString = "Invalid month"
}
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 -> monthString = "December"
else -> monthString = "Invalid month"
}
System.out.println(monthString)
}
@@ -0,0 +1,7 @@
//method
void foo() {
switch(a) {
System.out.println("1")
System.out.println("2")
}
}
@@ -0,0 +1,8 @@
fun foo() {
when (a) {
-> {
System.out.println("1")
System.out.println("2")
}
}
}
+13 -39
View File
@@ -7,45 +7,19 @@ public class SwitchDemo {
val month = 8
val monthString: String
when (month) {
1 -> {
monthString = "January"
}
2 -> {
monthString = "February"
}
3 -> {
monthString = "March"
}
4 -> {
monthString = "April"
}
5 -> {
monthString = "May"
}
6 -> {
monthString = "June"
}
7 -> {
monthString = "July"
}
8 -> {
monthString = "August"
}
9 -> {
monthString = "September"
}
10 -> {
monthString = "October"
}
11 -> {
monthString = "November"
}
12 -> {
monthString = "December"
}
else -> {
monthString = "Invalid month"
}
1 -> monthString = "January"
2 -> monthString = "February"
3 -> monthString = "March"
4 -> monthString = "April"
5 -> monthString = "May"
6 -> monthString = "June"
7 -> monthString = "July"
8 -> monthString = "August"
9 -> monthString = "September"
10 -> monthString = "October"
11 -> monthString = "November"
12 -> monthString = "December"
else -> monthString = "Invalid month"
}
System.out.println(monthString)
}
+3 -9
View File
@@ -5,15 +5,9 @@ public class NonDefault {
val value = 3
var valueString = ""
when (value) {
1 -> {
valueString = "ONE"
}
2 -> {
valueString = "TWO"
}
3 -> {
valueString = "THREE"
}
1 -> valueString = "ONE"
2 -> valueString = "TWO"
3 -> valueString = "THREE"
}
System.out.println(valueString)
}
@@ -0,0 +1,9 @@
//method
int foo(int a) {
switch(a) {
case 1: System.out.println("1"); return 1;
case 2: System.out.println("2"); return 2;
case 3: System.out.println("3"); throw new RuntimeException();
default: System.out.println("default"); return 0;
}
}
@@ -0,0 +1,20 @@
fun foo(a: Int): Int {
when (a) {
1 -> {
System.out.println("1")
return 1
}
2 -> {
System.out.println("2")
return 2
}
3 -> {
System.out.println("3")
throw RuntimeException()
}
else -> {
System.out.println("default")
return 0
}
}
}