1. Java / Говнокод #4791

    +84

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    http://svn.codehaus.org/groovy/trunk/groovy/groovy-core/src/main/org/codehaus/groovy/runtime/ArrayUtil.java
    
    /*
     * Copyright 2003-2009 the original author or authors.
     *
     * Licensed under the Apache License, Version 2.0 (the "License");
     * you may not use this file except in compliance with the License.
     * You may obtain a copy of the License at
     *
     *     http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    package org.codehaus.groovy.runtime;
    
    public class ArrayUtil {
        private static final Object[] EMPTY = new Object[0]
                ;
    
        public static Object[] createArray() {
            return EMPTY;
        }
    
        public static Object[] createArray(Object arg0) {
            return new Object[]{
                    arg0};
        }
    
        public static Object[] createArray(Object arg0, Object arg1) {
            return new Object[]{
                    arg0, arg1};
        }
    
        public static Object[] createArray(Object arg0, Object arg1, Object arg2) {
            return new Object[]{
                    arg0, arg1, arg2};
        }
    
        public static Object[] createArray(Object arg0, Object arg1, Object arg2, Object arg3) {
            return new Object[]{
                    arg0, arg1, arg2, arg3};
        }
    
        public static Object[] createArray(Object arg0, Object arg1, Object arg2, Object arg3, Object arg4) {
            return new Object[]{
                    arg0, arg1, arg2, arg3, arg4};
        }
    
        public static Object[] createArray(Object arg0, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5) {
            return new Object[]{
                    arg0, arg1, arg2, arg3, arg4, arg5};
        }
    
        public static Object[] createArray(Object arg0, Object arg1, Object arg2, Object arg3, Object arg4, Object arg5, Object arg6) {
            return new Object[]{
                    arg0, arg1, arg2, arg3, arg4, arg5, arg6};
        }
    
    ............

    Запостил: bytes, 30 Ноября 2010

    Комментарии (7) RSS

    • Java 1.4
      Ответить
      • А что, ArrayUtil.createArray(a, b, c) короче или понятнее new Object[]{a, b, c}?
        Ответить
        • ArrayUtil.createArray используется генератором классов:

          groovy-1.7.5-sources.jar:org/codehaus/groovy/classgen/AsmClassGenerator.java:2186
          
          mv.visitMethodInsn(INVOKESTATIC, "org/codehaus/groovy/runtime/ArrayUtil", "createArray", createArraySignature);
          Ответить
          • Не вижу я в http://svn.codehaus.org/groovy/trunk/groovy/groovy-core/src/main/org/codehaus/groovy/classgen/AsmClassGenerator.java ни ArrayUtil, ни createArray. Выпилили?
            Ответить
    • это быстрее вараргса)
      Ответить
    • Apache доставляет
      Ответить
    • Исходники Groovy написаны для 4той Явы в которой varargs ещё не было.
      Ответить

    Добавить комментарий