int i1=128;
byte b1=(byte)i1;
byte b1=(byte)i1;
解决方案 »
- 如何判断两个实例是否从属于同一个类(两个类都不知道从属于哪一个类的情况下,哎呀,说不清楚,详内)
- 哪里有idltojava编译器下载
- java中有没有在文件中删除或者修改一行或者几个字符的函数?怎么实现?
- jTable 的一个问题 !!
- 按下F2键,Text控件获得焦点
- 各位大虾帮看一下排班的算法
- 高手进,一个IO的问题,快吐血了,HELP ME!! thanks
- 时间转换问题???
- 小弟初涉java,请问j2ee和j2se有什么区别??
- 上传文件时,如何在读取文件内容之前中断读取,并返回客户端错误信息?
- 怎样获得一个汉字的ASCII码?我得到的是Unicode码:(
- 能帮忙看一下这个程序有什么问题吗? 谢谢
Integer A=new Integer(a);
byte b = A.byteValue();
String str=Integer.toString(abc);
byte[] byt= str.getBytes();
就上面而言
比如int a = 12 即 -128<a<127 (byte 一个字节可以表示)
可以通过上面的转换转换成一个byte[]
但如果int a =1234556
转换成String后再转换成 byte[]就会出现不止4个字节
而事实上,int就是4个字节的
有没有谁能告诉我怎么将int型转换成4个字节的byte[]?
具体你自己想吧,很有代表性。
{
byte [] ret=null;
if(source.length<2)
ret = new byte[2];
else
ret = source;
//converter here
ret[0]=(byte)(number&0xff);
ret[1]=(byte)((number>>8)&0xff);//还可以转换成4个字节的。 return ret;
}
有必要规定吗?
比如我用数字int x,
给一个转换为4字节的byte[4]源码吧!!
谢了
public static void main(String[] args) {
byte[] ss = TestByte.intToByte(107655646);
for (int i = 0 ; i < ss.length ; i++)
System.out.println(ss[i]);
} public static byte[] intToByte(int s) {
byte[] buf = new byte[4];
int pos;
for (pos = 0 ; pos < 4 ; pos++) {
buf[pos] = (byte) (s & 0xff);
s >>= 8;
if (s == 0) break;
}
byte[] rt = new byte[pos + 1];
for (int j = 0 ; j <= pos ; j++) {
rt[j] = buf[j];
}
return rt;
}}
byte[] bx = new byte[4];
try {
DataOutputStream fin;
ByteArrayOutputStream b = new ByteArrayOutputStream(4);
fin = new DataOutputStream(b);
fin.writeInt(data);
fin.flush();
fin.close();
fin = null;
bx = b.toByteArray();
}
catch(Exception e) {
log("bAppending/writing int data error : " + e.toString());
}
return bx;
} 这个似乎更好一些