例如JAVA的字符'a',由16bit表示,定义int[] temp,要把字符’a'的每个bit的1、0表示到temp数组中。

解决方案 »

  1.   

    char c='a';
    int tmp = (int)c;
    byte[] b = new byte[16];
    for (int i = 0; i < 16; i ++){
      b[i] = (byte)(tmp&0x1);
      tmp = tmp >> 1;
    }
    System.out.println(Arrays.toString(b));
      

  2.   

    int i = Character.getNumericValue('a');
    String s = Integer.toBinaryString(i);
    System.out.println(s);
    int[] temp = new int[s.length()];
    for (int j = 0; j < s.length(); j++) {
    temp[j] = Integer.parseInt(s.substring(j, j + 1));
    System.out.println(temp[j]);
    }
      

  3.   

    例如JAVA的字符'a',由16bit表示----是32bit的吧System.out.println(Integer.toBinaryString('a').toCharArray());
      

  4.   

    楼上的,toCharArray()方法转换以后可不是0、1数组了哦,而是0、1的作为字符对应的Unicode值数组,即该数组的值为48、49