正如標題所說,我不能區別getBytes[]
從serialization mechanism
與String
。下面是getBytes[]
和serialization mechanism
之間的測試:{getBytes和使用String序列化有什麼區別?
byte[] result = null;
ObjectOutputStream oos = null;
ByteArrayOutputStream byteArray = new ByteArrayOutputStream();
try {
oos = new ObjectOutputStream(byteArray);
try {
oos.writeUTF(data);
oos.flush();
result = byteArray.toByteArray();
} finally {
oos.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return result;
}
公共靜態字節[] serUTFString(字符串數據)
當我設置:
public void testUTF() {
byte[] data = SerializeUtil.serUTFString(str);
System.out.println(data.length);
System.out.println(str.getBytes().length);
}
這裏是SerializeUtil
str
到Redis
,都可以正常工作,但getBytes[]
似乎更有效。由於他們都從String
返回byte array
,有什麼區別,serialization
是必要的?
當然你發現字節數組長度不同,包含不同的數據? – EJP