public class DataUtil {

    public static void main(String[] args) {
int a = 8;
int value = charToInt(byteToChar(intToByte(a)));
int value2 = byteToInt(charToByte(intTochar(a)));
System.out.println(value);
System.out.println(value2);
} public static byte[] intToByte(int value){
byte[] b = new byte[4];
b[0] = (byte) (value & 0xff);
b[1] = (byte) ((value >> 8) & 0xff);
b[2] = (byte) ((value >> 16) & 0xff);
b[3] = (byte) ((value >> 24) & 0xff);
return b;
} public static int byteToInt(byte[] bytes){
return (bytes[0] & 0xff) | ((bytes[1] & 0xff) << 8)
| ((bytes[2] & 0xff) << 16) | ((bytes[3] & 0xff) << 24);
} public static char[] intTochar(int value){
char[] c = new char[2];
c[0] = (char) (value & 0xffff);
c[1] = (char) ((value >> 16) & 0xffff);
return c;
} public static int charToInt(char[] chars){
return (chars[0] & 0xffff) | ((chars[1] & 0xffff) << 16);
} public static char[] byteToChar(byte[] bytes){
char[] v = new char[2];
v[0] = (char) ((bytes[0] & 0xffff) | ((bytes[1] & 0xffff) << 8));
v[1] = (char) ((bytes[2] & 0xffff) | ((bytes[3] & 0xffff) << 8));
return v;
} public static byte[] charToByte(char[] chars){
byte[] bytes = new byte[4];
bytes[0] = (byte) (chars[0] & 0xff);
bytes[1] = (byte) ((chars[0] >> 8) & 0xff);
bytes[2] = (byte) (chars[1] & 0xff);
bytes[3] = (byte) ((chars[1] >> 8) & 0xff);
return bytes;
} public static byte[] objectToBytes(Object object) throws IOException{
try(ByteArrayOutputStream arrayOutputStream = new ByteArrayOutputStream();
ObjectOutputStream outputStream = new ObjectOutputStream(arrayOutputStream)){
outputStream.writeObject(object);
outputStream.flush();
return arrayOutputStream.toByteArray();
}
} public static Object bytesToObject(byte[] bytes) throws IOException,ClassNotFoundException{
try (ByteArrayInputStream arrayInputStream = new ByteArrayInputStream(bytes);
ObjectInputStream objectInputStream = new ObjectInputStream(arrayInputStream)){
return objectInputStream.readObject();
}
}
}

基本类型数据转换(int,char,byte)的更多相关文章

  1. 将COleDateTime类型数据转换成char *数据

    用OpenCV做多摄像头校准时间,在图像上显示时间信息,需求要将COleDateTime类型数据转换成char *数据 具体代码如下: 1: COleDateTime m_checkDate; 2: ...

  2. 计算机基础--Java中int char byte的关系

    计算机基础--Java中int char byte的关系 重要:一个汉字占用2byte,Java中用char(0-65535 Unicode16)型字符来存字(直接打印输出的话是字而非数字),当然要用 ...

  3. (C语言)char类型与int类型相加

    #include <stdio.h> int main(void) { ; ; int c = a + b; a += b; printf("c=%d",c); //p ...

  4. java基础类型中的char和byte的辨析及Unicode编码和UTF-8的区别

    在平常工作中使用到char和byte的场景不多,但是如果项目中使用到IO流操作时,则必定会涉及到这两个类型,下面让我们一起来回顾一下这两个类型吧. char和byte的对比 byte byte 字节, ...

  5. java笔记--关于int和byte[]的转换

    关于int和byte[]数组的转换 --如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/3891747.html "谢谢-- 众所 ...

  6. int与byte的区别

    Java中涉及byte.short和char类型的运算操作首先会把这些值转换为int类型,然后对int类型值进行运算,最后得到int类型的结果.因此,如果把两个byte类型值相加,最后会得到一个int ...

  7. mysql java 类型对照 int

    Java MySQL数据类型对照 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述             VARCHAR L+N VARCHAR java.lang.S ...

  8. java int转byte和long转byte

    在网络编程中,出于节约带宽或者编码的需要,通常需要以原生方式处理long和int,而不是转换为string. public class ByteOrderUtils { public static b ...

  9. C# int转byte[],byte[]转int

    第一种方法: byte数组转int u = (uint)(b[0] | b[1] << 8 |b[2] << 16 | b[3] << 24); int转byte数 ...

随机推荐

  1. Spark SQL官网阅读笔记

    Spark SQL是Spark中用于结构化数据处理的组件. Spark SQL可以从Hive中读取数据. 执行结果是Dataset/DataFrame. DataFrame是一个分布式数据容器.然而D ...

  2. C. 新年的繁荣

    题解: 用最小生成树的Boruvka算法 即每次找到每个点不在它联通块的边内的最大值 然后进行log次这个过程 然后找这个的话我们可以用trie树在2^m的时间内完成建树(如果是1要合并到0上)

  3. JMeter关联的几种方式总结案例

    1.接口响应结果,通常为HTML.JSON格式的数据,对于HTML的响应结果的提取,可以通过正则表达式,也可以通过XPath 来提取. 2.对于JSON格式的数据,可以通过正则表达式.JSON Ext ...

  4. Docker 学习9 Docker私有registry

    一.docker registry分类 二.安装docker-hub提供的registry 1.安装 [root@localhost yum.repos.d]# yum install -y dock ...

  5. Excel—宏表函数

    首先有一个知识点,宏表函数是不能直接在单元格中写公式的,需要先定义一个名称(“公式”选项卡——“定义名称”),然后在“定义名称”中的“定义位置”中写入宏表函数. GET.CELL(调取单元格信息的函数 ...

  6. RabbitMQ原理图

    一.RabbitMQ 原理图 二.Rabbit 交换器讲解 1 Direct 交换器(发布与订阅 完全匹配)                       1.2搭建环境               1 ...

  7. 027 storm面试小题

    1.大纲 Storm工作原理是什么? 流的模式是什么?默认是什么? 对于mapreduce如何理解? Storm的特点和特性是什么? Storm组件有哪些? 2.Storm工作原理是什么? 相对于ha ...

  8. [sublime]用sublime搭建属于自己的Python的IDE

    先在sublime中利用package control下载anaconda插件, 然后更改python的路径,不知道自己anaconda的python在哪,可以在prompt用命令where pyth ...

  9. Java - Multithreading zz

    Java is a multi-threaded programming language which means we can develop multi-threaded program usin ...

  10. Textarea设置自动高度

    $.fn.extend({ autoHeight: function() { return this.each(function() { var $this = jQuery(this); if(!$ ...