You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GapSwitch.java 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. package test4;
  2. public class GapSwitch {
  3. public int value;
  4. public int foo(int i) { return i + 1; }
  5. public int run() {
  6. value = 0;
  7. int k = 0;
  8. k = foo(k);
  9. switch (value) {
  10. case 0:
  11. k++;
  12. break;
  13. case 1:
  14. k *= 10;
  15. break;
  16. default:
  17. k *= 100;
  18. break;
  19. }
  20. return k + value * 1000;
  21. }
  22. public int run2() {
  23. value = 0;
  24. int k = 0;
  25. k = foo(k);
  26. switch (value) {
  27. case 10:
  28. k++;
  29. break;
  30. case 1300:
  31. k *= 10;
  32. break;
  33. default:
  34. k *= 100;
  35. break;
  36. }
  37. return k + value * 1000;
  38. }
  39. public int run3() {
  40. value = 1;
  41. int k = 0;
  42. for (int i = 0; i < 2; i++) {
  43. k = foo(k);
  44. switch (value) {
  45. case 10:
  46. k++;
  47. k = foo(k);
  48. break;
  49. case 1300:
  50. k *= 100;
  51. k = foo(k);
  52. break;
  53. default:
  54. k *= 10;
  55. k = foo(k);
  56. break;
  57. }
  58. k = foo(k);
  59. switch (value) {
  60. case 10:
  61. k++;
  62. k = foo(k);
  63. break;
  64. case 13:
  65. k *= 100;
  66. k = foo(k);
  67. break;
  68. default:
  69. k *= 10;
  70. k = foo(k);
  71. break;
  72. }
  73. }
  74. return k + value;
  75. }
  76. }