[]的困惑?
问题:
1)[]放前放后,有区别吗?
2)m_bmpBoard为何不用new呢?
3)用了new就分配了内存空间,不用new的也分配了内存空间吗?
private Bitmap m_bmpBoard;
private Bitmap m_bmpExit;
private Bitmap heiZi[] = new Bitmap[7];
private Bitmap[] hongZi = new Bitmap[7];Resources res = getResources();
m_bmpBoard = BitmapFactory.decodeResource(res, R.drawable.board);
m_bmpExit = BitmapFactory.decodeResource(res, R.drawable.exit);heiZi[0] = BitmapFactory.decodeResource(getResources(), R.drawable.heishuai);//黑帅
heiZi[1] = BitmapFactory.decodeResource(getResources(), R.drawable.heiju);//黑车
heiZi[2] = BitmapFactory.decodeResource(getResources(), R.drawable.heima);//黑马
heiZi[3] = BitmapFactory.decodeResource(getResources(), R.drawable.heipao);//黑炮
heiZi[4] = BitmapFactory.decodeResource(getResources(), R.drawable.heishi);//黑士
heiZi[5] = BitmapFactory.decodeResource(getResources(), R.drawable.heixiang);//黑象
heiZi[6] = BitmapFactory.decodeResource(getResources(), R.drawable.heibing);//黑兵

hongZi[0] = BitmapFactory.decodeResource(getResources(), R.drawable.hongjiang);//红将
hongZi[1] = BitmapFactory.decodeResource(getResources(), R.drawable.hongju);//红车
hongZi[2] = BitmapFactory.decodeResource(getResources(), R.drawable.hongma);//红马
hongZi[3] = BitmapFactory.decodeResource(getResources(), R.drawable.hongpao);//红砲
hongZi[4] = BitmapFactory.decodeResource(getResources(), R.drawable.hongshi);//红仕
hongZi[5] = BitmapFactory.decodeResource(getResources(), R.drawable.hongxiang);//红相
hongZi[6] = BitmapFactory.decodeResource(getResources(), R.drawable.hongzu);//红卒

解决方案 »

  1.   

    下面这样分开写也可以的。
    //声明
    private Bitmap m_bmpBlackChess[];//执行
    m_bmpBlackChess = new Bitmap[7];
    m_bmpBlackChess[0] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑帅
    m_bmpBlackChess[1] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑车
    m_bmpBlackChess[2] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑马
    m_bmpBlackChess[3] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑炮
    m_bmpBlackChess[4] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑士
    m_bmpBlackChess[5] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑象
    m_bmpBlackChess[6] = BitmapFactory.decodeResource(res, R.drawable.exit);//黑兵
      

  2.   

    1.没区别
    2、decodeResource是BitmapFactory的static方法,可以通过类名直接调用
    3、没有你这样的说法。PS:哥们,你的java基础?
      

  3.   

    private Bitmap[] hongZi = new Bitmap[7];
    一般都这样写,不过你那样写也没区别
    先补补基础
      

  4.   

    []的困惑?
    问题:
    1)[]放前放后,有区别吗?   没区别哦
    2)m_bmpBoard为何不用new呢?m_bmpBoard 在后面有赋值函数,这个函数里面会创建对象的啦。
    3)用了new就分配了内存空间,不用new的也分配了内存空间吗?

    对的哦。不用new ,这个句柄就是一个指向空对象的指针,用了new会指向一个新对象哦。
    楼主多谢谢,就有感觉啦