java getBytes("Unicode"))结果为[-2, -1, 0, 97]

请教大家一个问题
import java.util.Arrays;

public class Test {
public static void main(String[] args) throws Exception{
char a = 'a';
System.out.println((int)a);//unicode编码

    System.out.println(Arrays.toString("a".getBytes("UTF-8")));
    System.out.println(Arrays.toString("a".getBytes("Unicode")));
    System.out.println(Arrays.toString("a".getBytes("GBK")));
    System.out.println(Arrays.toString("a".getBytes("ASCII")));
}

}
结果为
[97]
[-2, -1, 0, 97]
[97]
[97]

其中,[-2, -1, 0, 97]是什么意思?谢谢

 [-2, -1, 0, 97]
 -2,1表示这代表是unicode格式(代表ff,fe),0和97表示a (unicode统一用2个字节表示英文和和中文内容)