code: public void newarray(TypeMirror type, int count) throws IOException
      {
          if (type.getKind() != TypeKind.ARRAY)
          {
              throw new IllegalArgumentException(type+" is not array");
          }
          ArrayType at = (ArrayType) type;
          iconst(count);
          TypeMirror ct = at.getComponentType();
          switch (ct.getKind())
          {
              case BOOLEAN:
                  newarray(T_BOOLEAN);
                  break;
              case CHAR:
                  newarray(T_CHAR);
                  break;
              case FLOAT:
                  newarray(T_FLOAT);
                  break;
              case DOUBLE:
                  newarray(T_DOUBLE);
                  break;
              case BYTE:
                  newarray(T_BYTE);
                  break;
              case SHORT:
                  newarray(T_SHORT);
                  break;
              case INT:
                  newarray(T_INT);
                  break;
              case LONG:
                  newarray(T_LONG);
                  break;
              case DECLARED:
              {
                  DeclaredType dt = (DeclaredType) ct;
                  int index = subClass.resolveClassIndex((TypeElement)dt.asElement());
                  anewarray(index);
              }
                  break;
              default:
                  throw new IllegalArgumentException(type+" not supported");
          }
      }
docs: Create new array
  <p>Stack: ..., =&gt; ..., arrayref
  @param type array class eg. String[].class
  @param count array count
  @throws IOException