import java.util.*;
public class tr {
  public static void main(String[]args){
  ArrayList[]  arr=new ArrayList[2];
  arr[0]=new ArrayList<byte[]>();
  arr[1]=new ArrayList<byte[]>();
  arr[0].add(Arrays.asList(1,2,3));
  arr[0].add(Arrays.asList(4,5));
  arr[0].add(Arrays.asList(1));
  arr[1].add(Arrays.asList(1,2,3));
  arr[1].add(Arrays.asList(4,5));
  arr[1].add(Arrays.asList(1,2,3,4,5));
  byte[] b;
  System.out.println();
  
  
  
  } 
}
我现在想得到arr[0]中第二个整形数组{4,5}的每一个值,怎么才能得到?高手指点一下

解决方案 »

  1.   

    btye[] a=arr[0].get(1);
    n1=a[0];
    n2=a[1];
      

  2.   

    byte[] b = arr[0].get(1);
    System.out.println(b[0]+" "+b[1]);
      

  3.   

    byte[] b=arr[0].get(1);
    出现错误:Type mismatch: cannot convert from Object to byte[]
      

  4.   

    byte[] b=arr.get[0].get[1];
    报错的话,用强制类型转换。
      

  5.   


     List list = (List) arr[0].get(1);
      System.out.println(list.get(0)+" "+list.get(1));
      

  6.   

    import java.util.ArrayList;public class zy0401{
        public void fangFa(int a){
            System.out.println("zy0401.a=");
        }
        public static void main(String[]args){
         ArrayList<byte[]>[]  arr=new ArrayList[2]; 
           arr[0]=new ArrayList <byte[]>(); 
           arr[1]=new ArrayList <byte[]>(); 
           arr[0].add(new byte[]{1,2,3}); 
           arr[0].add(new byte[]{4,5}); 
           arr[0].add(new byte[]{6,7,7}); 
           byte[] c=arr[0].get(1); 
           System.out.println(c[1]);     }
    }测试结果:5
    LZ Arrays.asList(1,2,3);返回的是List不是数组
      

  7.   

    ArrayList<byte[]>[]构造一个ArrayList的数组,其中ArrayList使用泛型参数
    在这个数组中添加元素,即 arr[0]=new ArrayList <byte[]>(); 
    然后在这个元素里面add数据,由于泛型参数限定只能添加Byte[],即
     arr[0].add(new byte[]{1,2,3}); 
    去元素的时候 byte[] c=arr[0].get(1); 
    返回一个byte数组,然后再取数组中的元素就得到数据了
      

  8.   

    不应该用 ArrayList[] arr 的,这样声明的 ArrayList 没有范型类型信息。应该用
    ArrayList<byte[]> arr = new ArrayList<byte[]>[2];原来那种用法的话,编译器就不会自动检查类型而是将 arr[0] 和 arr[1] 作为 ArrayList<Object> 处理。所以arr[0].get(1) 返回一个 Object。但是我们知道它是 List,所以可以强制转换后再使用:
    ((List) arr[0].get(1)).get(i)
      

  9.   

     
      byte[] b=(byte[])arr[0].get(0);
      System.out.println(b[0]);
      
    这样虽然没有错,但是不能运行!!!
      

  10.   

    byte[] b=(byte[])arr.get(0); 
      System.out.println(b[0]);