JavaCat.java 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. import java.util.*;
  2. public class JavaCat
  3. {
  4. public static int add1(int a)
  5. {
  6. return a + 1;
  7. }
  8. public static String add2(String a)
  9. {
  10. return a + '1';
  11. }
  12. public static char addChar(char a)
  13. {
  14. return ++a;
  15. }
  16. public static int testThrow(int a) throws Exception
  17. {
  18. throw new Exception("Exception from Java");
  19. }
  20. public static byte[] testData(byte [] indata)
  21. {
  22. indata[0]++;
  23. return indata;
  24. }
  25. public static int add(int a, int b)
  26. {
  27. return a + b;
  28. }
  29. public static long addL(int a, int b)
  30. {
  31. return a + b;
  32. }
  33. public static Integer addI(int a, int b)
  34. {
  35. return a + b;
  36. }
  37. public static float fadd(float a, float b)
  38. {
  39. return a + b;
  40. }
  41. public static double dadd(double a, double b)
  42. {
  43. return a + b;
  44. }
  45. public static Double daddD(double a, double b)
  46. {
  47. return a + b;
  48. }
  49. public static String cat(String a, String b)
  50. {
  51. return a + b;
  52. }
  53. public static int testArrays(boolean[] b, short[] s, int[] i, double[] d)
  54. {
  55. return b.length + s.length + i.length + d.length;
  56. }
  57. public static String[] testStringArray(String[] in)
  58. {
  59. String t = in[0];
  60. in[0] = in[1];
  61. in[1] = t;
  62. return in;
  63. }
  64. public static class NestedClass
  65. {
  66. String ufield;
  67. public NestedClass(String s)
  68. {
  69. ufield = s;
  70. }
  71. public NestedClass()
  72. {
  73. }
  74. }
  75. boolean bfield;
  76. int ifield;
  77. long lfield;
  78. double dfield;
  79. float ffield;
  80. String sfield;
  81. char cfield1;
  82. String cfield2;
  83. NestedClass n;
  84. boolean bset[];
  85. byte [] dset[];
  86. String sset[];
  87. NestedClass sub[];
  88. public JavaCat(boolean b, int i, double d)
  89. {
  90. bfield = b;
  91. ifield = i;
  92. lfield = i * 100000000;
  93. dfield = d;
  94. ffield = (float) d;
  95. sfield = "Yoohoo";
  96. cfield1 = 'X';
  97. cfield2 = "Z";
  98. n = new NestedClass("nest");
  99. bset = new boolean [5];
  100. bset[3] = b;
  101. dset = new byte[1][];
  102. dset[0] = new byte[1];
  103. dset[0][0] = 14;
  104. sset = new String[1];
  105. sset[0] = "Hello";
  106. sub = new NestedClass[1];
  107. sub[0] = new NestedClass("subnest");
  108. }
  109. public JavaCat()
  110. {
  111. n = new NestedClass("nest2");
  112. }
  113. public static JavaCat returnrec(boolean b, int i, double d)
  114. {
  115. return new JavaCat(b,i,d);
  116. }
  117. public static String passrec(JavaCat j)
  118. {
  119. return j.n.ufield;
  120. }
  121. public static JavaCat transform(JavaCat in, int lim)
  122. {
  123. return new JavaCat(in.bfield, lim, in.dfield);
  124. }
  125. public static int passDataset(Iterator<JavaCat> d)
  126. {
  127. int sum = 0;
  128. while (d.hasNext())
  129. {
  130. JavaCat r = d.next();
  131. sum += r.lfield;
  132. }
  133. return sum;
  134. }
  135. public static Iterator<JavaCat> passDataset2(JavaCat d[])
  136. {
  137. return Arrays.asList(d).iterator();
  138. }
  139. }