通过转换十六进制值,我有一个长值和Set Particular位。
long l = 4;
long output; //output is 84 if i want set 7th bit (1000 0100)
同样的方法是长7然后输出是87所以如何设置长值内的特定位。
要求:
我必须通过适当的格式化将一个字节发送到服务器。
客户提供以下内容。 1.是否设置第7位。 2.一个整数值(如4,5,6,7等) 现在我生成了格式为客户端参数的字符串或小数(2H)。
答案 0 :(得分:3)
您需要按位或使用该位的值。
通过向左移动1L
正确的位数,可以找到该位的值。 (不要忘记L
,如果没有你正在移动int
1.)
按位或可以使用Java中的|
运算符完成。
所以代码变成:
long output = l | (1L << 7);