Java中如何实现无符号数的转换

Java中如何实现无符号数的转换

目录:

1.Java有哪几种数据类型
2.Java中如何实现无符号数的转换

正文:

1. Java有哪几种数据类型

Java共有8种基本数据类型
4种整形: byte,char,int,long
2种浮点类型: float,double
1种字符型:char
1种表示真值的类型:boolean


注意:

c语言中也有表示真值的数据类型:bool,但是使用的时候要加上一个头文件,否则无法使用#include<stdbool.h>,而Java没有这种顾虑,可以直接用。


类型存储需求取值范围
int4字节-2 147 483 648~2 147 483 647
short2字节-32 768~32 767
long8字节-9 223 372 036 854 775 808~9 223 372 036 854 775 807
byte1字节-128~127

2. Java中如何实现无符号数的转换

1.位运算

位运算

基础:

符号名称作用
&按位与如果两个相应的二进制位都为1,则该位的结果值为1,否则为0
|按位或两个相应的二进制位中只要有一个为1,该位的结果值为1,否则位0
^按位异或若参加运算的两个二进制位值相同则为0,否则为1
~按位取反用来对一个二进制数按位取反,即将0变1,将1变0
<<左移用来将一个数的各二进制位全部左移N位,右补0
>>右移将一个数的各二进制位右移N位,移到右端的低位被舍弃,对于无符号数, 高位补0

字节小的类型转化为字节大的类型

例如:byte a=-20;

int b=a & 0xff; (0xff为16进制等于2进制的11 111 111)

解释:

-20的二进制为 11 101 100

与11 111 111的且运算,结果为:0 000 000 011 101 100化为10进制为236

2.

static String toUnsignedString(int/long i):将指定int或long型整数转换为无符号整数对应的字符串。
static String toUnsignedString(int/long i, int radix):将指定int或long型整数转换为指定进制的无符号整数对应的字符串。
static xxx parseUnsignedXxx(String s):将指定字符串解析为无符号整数。当调用类为Integer时,xxx 代表 int。
static xxx parseUnsignedXxx(String s, int radix):将指定字符串按指定进制解析为无符号整数。调用类为Integer时则xxx代表int
Byte.toUnsignedInt(b):将char类型转化为无符号整数的int型

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值