JAVA中根据以下代码将int数据转换为byte数据:
public static byte[] int32ToBytes(int val) {
int size = IntegerSIZE / ByteSIZE;
byte[] ret = new byte[size];
for (int i = 0; i < size; ++i) {
ret[i] = (byte) (val << (8 i) >> 56);
}
return ret;
}
扩展资料
Java也提供了一个byte数据类型,并且是基本类型。java byte是做为最小的数字来处理的,因此它的值域被定义为-128~127,也就是signed byte。
byte,即字节,由8位的二进制组成。在Java中,byte类型的数据是8位带符号的二进制数。在计算机中,8位带符号二进制数的取值范围是[-128, 127],所以在Java中,byte类型的取值范围也是[-128, 127]。
运算规则:
####正数的最高位都是 0 ,正数的值就是二进制表示的值。 ####
####负数的最高位都是 1 ,负数的值是 取反后加一 然后加个负号得到得值。 ####
public class StringBufferDemo {
public static void main(String[] args) {
StringBuffer s=new StringBuffer("近来天气不太好,有时几天都见不到月亮。可今天却是明月当空,青天万里无云");
StringBuffer s1=new StringBuffer("明月当空,青天万里无云");
s=sdelete(slastIndexOf("明月当空,青天万里无云"),slength());//将“明月当空,青天万里无云”取出,存到StringBuffer s1中。
Systemoutprintln(s);
s1=s1delete(3,s1length());//删除s1从第三个字符开始的所有字符。
Systemoutprintln(s1);
StringBuffer s2=new StringBuffer(ssubstring(7,10));//取s的一个子串s2(从第7个开始取出3个字符)。
Systemoutprintln(s2);
s2reverse();//将子串s2反转。
Systemoutprintln(s2);
s1append(s2);//将s2添加到s1的后面。
Systemoutprintln("字符串'"+s1+"'的长度是:"+s1length());//计算新字符串的长度L,并打印出结果。
}
}
结果是:
近来天气不太好,有时几天都见不到月亮。可今天却是
明月当
,有时
时有,
字符串'明月当时有,'的长度是:6
//参考代码如下:
#include <stdioh>
int main()
{
int i, j, n, k=0, isFound=0;
int num[15] = {88,86,75,74,61,56,52,43,39,34,31,22,18,16,8}; //测试数组
printf("请输出一个整数:\n");
scanf("%d", &n);
i = (int)15/2; //对折位移量
j = (int)15/2; //取数“指针”
while(k<2)
{
i = (int)i/2;
if(i == 0) k++; //i==0 即折半到无可再折时,仍有最后一次比较,故以k做计数
//若未相等,计算下一循环指针的位置
if(n<num[j])
j = j + (i + 1);
else if(n>num[j])
j = j - (i + 1);
else
{
isFound = 1;
break; //若找到相等数,标记已找到并退出循环
}
}
//输出结果
if(isFound)
printf("该数是数组中第%d个元素的值\n", j);
else
printf("查无此数!\n");
return 0;
}
以上就是关于JAVA中怎么将int数据转换为byte数据全部的内容,包括:JAVA中怎么将int数据转换为byte数据、用Java编写程序、c语言编程实现“折半查找”的过程。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)