java基础类型

java的基础类型有8中,如下

基本类型 大小 范围/精度
byte 1字节  -128到127
short 2 字节  -32,768到32,767
char 2 字节 整个Unicode字符集
int 4 字节 -2,147,483,648到2,147,483,647
float 4 字节 32位IEEE 754单精度
long 8 字节  -9,223,372,036,854,775,808到9,223,372,036, 854,775,807
double 8 字节  64位IEEE 754双精度
boolean 1 位 True或者false


如果使用十六进制,8位可以转换成一个字节,如"0B",可以转成一个byte,同样一个byte也可以转换成两个是(8位)十六进制字符。如:

//hex --> byte

        String hex="0B";
        byte b=(byte)Integer.parseInt(hex, 16);
        System.out.println(b);   //--> 11

//byte --> hex
        byte b = 12;
        StringBuffer sb = new StringBuffer(2);
        if (((int) b & 0xff) < 0x10){
            sb.append("0");
        }
        sb.append(Long.toString((int) b & 0xff, 16));
        System.out.println(sb.toString());
  //--> 0C


在byte传输的层级是不用考虑编码格式问题,如果我们传输数据时使用的byte数组等,当我们使用byte数组,并将其转换成String时才会存在编码的问题,常用的编码格式有utf-8,gbk,gb2312等。String内部的存储单元的char,所以编码是在byte和char之间的存在的。

 

        String s="测试";

        byte[] bytes=s.getBytes("gbk");

         ....

        String ss=new String(bytes, "gbk");

 



 

 

 



  

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值