Java short long int 与byte数组之间相互转换

java数据类型转byte数组 ip地址转4字节byte,char转2字节byte,byte数组转char,int整数转换为4字节的byte数组,byte数组转换为int整数,double类型转8字节数组,8位数组转double,long整数转换为8字节的byte数组,short整数转换为2字节的byte数组,byte数组转换为无符号short整数,byte数组转换为无符号short整数 立即下载

Java基本类型与byte数组之间相互转换,

这几天一直用json。 好久没用过byte了,现在用socket,全部是byte,所以整理了下

public class ByteUtil

{

    public static byte[] getBytes(short data)

    {

        byte[] bytes = new byte[2];

        bytes[0] = (byte) (data & 0xff);

        bytes[1] = (byte) ((data & 0xff00) >> 8);

        return bytes;

    }

 

    public static byte[] getBytes(char data)

    {

        byte[] bytes = new byte[2];

        bytes[0] = (byte) (data);

        bytes[1] = (byte) (data >> 8);

        return bytes;

    }

 

    public static byte[] getBytes(int data)

    {

        byte[] bytes = new byte[4];

        bytes[0] = (byte) (data & 0xff);

        bytes[1] = (byte) ((data & 0xff00) >> 8);

        bytes[2] = (byte) ((data & 0xff0000) >> 16);

        bytes[3] = (byte) ((data & 0xff000000) >> 24);

        return bytes;

    }

 

    public static byte[] getBytes(long data)

    {

        byte[] bytes = new byte[8];

        bytes[0] = (byte) (data & 0xff);

        bytes[1] = (byte) ((data >> 8) & 0xff);

        bytes[2] = (byte) ((data >> 16) & 0xff);

        bytes[3] = (byte) ((data >> 24) & 0xff);

        bytes[4] = (byte) ((data >> 32) & 0xff);

        bytes[5] = (byte) ((data >> 40) & 0xff);

        bytes[6] = (byte) ((data >> 48) & 0xff);

        bytes[7] = (byte) ((data >> 56) & 0xff);

        return bytes;

    }

 

    public static byte[] getBytes(float data)

    {

        int intBits = Float.floatToIntBits(data);

        return getBytes(intBits);

    }

 

    public static byte[] getBytes(double data)

    {

        long intBits = Double.doubleToLongBits(data);

        return getBytes(intBits);

    }

 

    public static byte[] getBytes(String data, String charsetName)

    {

        Charset charset = Charset.forName(charsetName);

        return data.getBytes(charset);

    }

 

    public static byte[] getBytes(String data)

    {

        return getBytes(data, "GBK");

    }

 

    

    public static short getShort(byte[] bytes)

    {

        return (short) ((0xff & bytes[0]) | (0xff00 & (bytes[1] << 8)));

    }

 

    public static char getChar(byte[] bytes)

    {

        return (char) ((0xff & bytes[0]) | (0xff00 & (bytes[1] << 8)));

    }

 

    public static int getInt(byte[] bytes)

    {

        return (0xff & bytes[0]) | (0xff00 & (bytes[1] << 8)) | (0xff0000 & (bytes[2] << 16)) | (0xff000000 & (bytes[3] << 24));

    }

   

    public static long getLong(byte[] bytes)

    {

        return(0xffL & (long)bytes[0]) | (0xff00L & ((long)bytes[1] << 8)) | (0xff0000L & ((long)bytes[2] << 16)) | (0xff000000L & ((long)bytes[3] << 24))

         | (0xff00000000L & ((long)bytes[4] << 32)) | (0xff0000000000L & ((long)bytes[5] << 40)) | (0xff000000000000L & ((long)bytes[6] << 48)) | (0xff00000000000000L & ((long)bytes[7] << 56));

    }

 

    public static float getFloat(byte[] bytes)

    {

        return Float.intBitsToFloat(getInt(bytes));

    }

 

    public static double getDouble(byte[] bytes)

    {

        long l = getLong(bytes);

        System.out.println(l);

        return Double.longBitsToDouble(l);

    }

 

    public static String getString(byte[] bytes, String charsetName)

    {

        return new String(bytes, Charset.forName(charsetName));

    }

 

    public static String getString(byte[] bytes)

    {

        return getString(bytes, "GBK");

    }

 

    

    public static void main(String[] args)

    {

        short s = 200;

        int i = 201;

        long l = 222222;

        char c = 'a';

        float f = 122.22f;

        double d = 122.22;

        String string = "我是Ai相册开发";

        System.out.println(s);

        System.out.println(i);

        System.out.println(l);

        System.out.println(c);

        System.out.println(f);

        System.out.println(d);

        System.out.println(string);

 

        System.out.println("**************");

        System.out.println(getShort(getBytes(s)));

        System.out.println(getInt(getBytes(i)));

        System.out.println(getLong(getBytes(l)));

        System.out.println(getChar(getBytes(c)));

        System.out.println(getFloat(getBytes(f)));

        System.out.println(getDouble(getBytes(d)));

        System.out.println(getString(getBytes(string)));

    }

}

NY8A053E 例程 之 PWM Ouput 更多关于NY8A053E的相关例程请留言! 阅读详情

相关推荐

SAP-PM设备模块-PM主数据之功能位置

SAP-PM模块学习

TRUIXIANG的博客 5138

Java长整数long、整数int与字节集合byte[]互转

1.long转byte[] public static byte[] longToBytes(long data) { byte[] res = new byte[8]; for(int i = 0; i < col.length; i++) { col[i] = (byte)(data >> 8*i); } return res; } 2.byte[]转long public static long bytesToLong(byte[] args) { if(args =

qq_25405729的博客 2368

MuJoCo 机械臂关节空间阻抗控制Impedance实现(附代码)

阻抗控制通过调整关节的刚度和阻尼,让机器人在接触时产生顺应性,减少冲击力,其核心目标是在接触外部载荷时能够自适应调整输出力矩,实现力与位置的协同控制。阻抗控制可以很快的到达设定位置,在此基础上,使用mujoco交互中的施加外力操作,可以看到当外力松开后,机械臂也可以很快的回弹回设定位置。其中self.Kp和self.Kd为固定刚度和阻尼系数,通过修改刚度和阻尼参数,可以变得更柔顺来应对各种场景。注释掉该行后,直接simulate仿真可以看到机械臂控制位置震荡等情况,接下来引入关节空间阻抗控制的代码。

darcsdn 1276

long转byte java_如何将Long转换为byte []并返回java

问题如何将长转换为字节[]并返回Java?我正在尝试将long转换为byte [],以便我能够通过tcp连接发送byte []。另一方面,我想取该字节[]并将其转换回double。任何提示将不胜感激。#1 热门回答(162 赞)public byte[] longToBytes(long x) {ByteBuffer buffer = ByteBuffer.allocate(Long.BYTES)...

weixin_35773916的博客 4227

一文搞定3D卷积

在讨论卷积核的时候,是不把channel维加进去的 核 = 一个可以滑动的窗口 窗口内不同位置数据之间的权值共享 3D卷积,卷积核会在3个方向上运动,那么卷积核的运动需要有三个自由度(一小块立方体,在一个大面包块内3个方向上滑动 2D卷积,卷积核只在2个方向上运动,因此只有两个自由度(一小片纸,在一大张纸内2个方向上滑动 1D卷积,卷积核只在1个方向上运动,因此只有一个自由度(一条滑窗,在一大长线上1个方向上滑动 一个卷积核运算一次 得到一个输出值 以上讨论了单个卷积核,接下来考虑多通道,一个卷积核对应一

njuptalex的博客 3万+

YOLOv11改进 ,YOLOv11改进主干网络为MobileNetV3,助力涨点

MobileNetV3通过结合硬件感知网络架构搜索(NAS)和NetAdapt算法,通过新颖的架构改进进一步提升了性能。本文开始探讨了自动化搜索算法与网络设计如何协同工作,以利用互补方法来提升整体技术水平。通过这一过程,创建了两个新的MobileNet模型:MobileNetV3-Large和MobileNetV3-Small,分别针对高资源和低资源使用场景。这些模型随后被适配并应用于目标检测和语义分割任务。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 1937

java的int、char、long、float、double对byte的转换

java的int、char、long、float、double对byte的转换,在通信的时候会用到 2011-07-18 16:53:40     我来说两句  收藏    我要投稿    [字体:小 大] Java代码  package com.util;     /**   *    *    * 文件名称: com.born.util.ByteUti

wzwind的专栏 823

3D结构光 vs TOF——手机厂商为何选择TOF方案?

3D视觉感知技术路线分析:结构光与TOF对比 3D视觉感知领域存在结构光和TOF两大主流技术。结构光基于三角定位法,精度高(毫米级)但工作距离短(<1.5米),适合人脸识别等近距离场景;TOF通过测量光脉冲飞行时间计算深度,精度中等(厘米级)但工作距离长(0.5-5米+),更适合AR导航等中远距离应用。手机厂商选型时考虑:前置认证选择结构光(如苹果FaceID),后置场景倾向TOF(安卓阵营),因后者更适配全面屏设计、环境适应性强且成本优势明显。两种技术互补共存,共同推动3D感知应用发展。

致力于lidar应用开发 114

java将long型转换为字节数组_java – 将long转换为字节数组,并将其添加到另一个数组...

有多种方法:>使用ByteBuffer(最佳选项 – 简洁易读):byte[] bytes = ByteBuffer.allocate(Long.SIZE / Byte.SIZE).putLong(someLong).array();ByteArrayOutputStream baos = new ByteArrayOutputStream();DataOutputStream dos = ...

weixin_36403956的博客 2223

多模态论文笔记——BLIP

本文详细介绍这几年AIGC火爆的隐藏功臣,多模态模型:BLIP。

haopinglianlian的博客 2454

航天设备研制中的形态分类:电性件、正样件及其他关键形态详解

航天设备的研制是一个高度复杂且严谨的工程过程,涉及多个阶段的不同产品形态。这些形态各具特点,在研制流程中承担着不同的验证任务和工程目标。本文将系统介绍航天设备研制中的主要形态,包括**电性件(EM)**、**正样件(FM)**以及**结构热控件(STM)**、**鉴定件(QM)**和**初样件(PFM)**等,详细解析它们的定义、用途和工程意义,帮助读者全面理解航天产品从设计到飞行的全生命周期管理。

ScilogyHunter的博客 1661

在Java中,将一个long类型的数据转换为一个字节数组,并将其拆分为两个short类型的数据(每个short类型占16位),以便写入两个连续的寄存器

【代码】在Java中,将一个long类型的数据转换为一个字节数组,并将其拆分为两个short类型的数据(每个short类型占16位),以便写入两个连续的寄存器。

weixin_36873225的博客 697

Linux系统故障排查思路实践教程(上)

本文主要介绍了Linux系统日志分析与常见故障排查的实用方法。首先从系统日志的分类及其涉及的日志文件进行说明;其次详细讲解了忘记用户密码的解决方案;接着对系统无法启动问题,提供了异常断电后修复文件系统、/etc/fstab文件丢失恢复等常见故障的处理方案。最后介绍了文件系统只读错误的排查思路和修复方法,包括磁盘空间检查、文件系统修复等实用技巧。全文提供了大量具体命令和操作流程,为Linux系统维护人员提供了实用的故障处理指南。

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 330

java byte 转 short_Java short long int 与byte数组之间相互转换

public class ByteUtil{public static byte[] getBytes(short data){byte[] bytes = new byte[2];bytes[0] = (byte) (data & 0xff);bytes[1] = (byte) ((data & 0xff00) >> 8);return bytes;}public s...

weixin_35730840的博客 319

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Java中有关byte和String的转换笔记和byte[]到short、int、long的相互转换

Java中有关byte和String的转换笔记问题1:java中没有实现这种“byte a = 0xB2 --> String b = “B2””转换的简单实现需要自己实现。 答:自己编写的转换函数,思路将byte的高低4位分开,分别转换为对应的字符然后合成返回的字符串。 public static String byteToString(byte b) { byte high, low;

如是所来的专栏 8115

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

c语言long int字节数组初始化,InputStream,int,shot,long与byte数组之间的互相转换

没别的,直接上代码!packagecom.dst.util;importjava.io.*;/***流操作工具类*@author崔素强*/publicclassStreamTool{/***@方法功能InputStream转为byte*@paramInputStream*@return字节数组*@throwsException*/publicstaticby...

weixin_30218733的博客 493

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

java中byte数组和int,long,short之间的转换

public class ByteUtil {       /**       * 转换short为byte       *        * @param b       * @param s       *            需要转换的short       * @param index       */       public static void putShort

snmkc_csdn的博客 1703

java中byte数组与int,long,short间的转换

[java] view plaincopy package com.util;      /**   *    *    * 文件名称: com.born.util.ByteUtil.java   * 文件描述: byte转换工具   * 版权所有: 版权所有(C)2001-2006   * 公 司: bran   * 内容摘要:   * 其他说明

1291

java Byte和各数据类型(short,int,long,float,double)之间的转换

在Java的网络编程中传输的经常是byte数组,但我们实际中使用的数据类型可能是任一种数据类型,这就需要在它们之间相互转换,转换的核心在于将其他类型的数据的每一位转换成byte类型的数据。下面给出相关的转换代码 1.short与byte数组的互转 [java] view plaincopy /**  * 转换short为byte  * 

likaiwalkman@csdn - Code Study Area 715

java double转short_【转】java byte转long、double、float、int、short,或者long、double、float、int、short转byte...

原文网址:http://www.xuebuyuan.com/988752.htmljava byte与其他数据类型的转换主要用于二进制数据的编码和解码,主要用于网络传输,读写二进制文件,java和c++服务器之间的数据通信等等以下是总结的源码/*** BYTE转INT** @param b* @return*/protected int byteArrayToInt(byte[] b) {retu...

weixin_42639633的博客 1436

字节和数字相互转化

package com.abupdate.iot.utils; /** * @author abupdate * @date 2019/6/12. * @title 字节和数字相互转化 */ public class NumberUtil { /** * int整数转换为4字节的byte数组 * * @param i 整数 * @retur...

ljty_sy的博客 1482

short、int、long与byte之间的转换工具类

转自:http://zuoqiang.iteye.com/blog/1545549 /**  * 各基础类型与byte之间的转换  * @author shanl  *  */ public class Utility { /** * 将short转成byte[2] * @param a * @return */ public static byte[] short2B

goobycle 685

基本类型数组与包装类型数组相互转换

/** * 基本类型数组与包装类型数组相互转换的工具类 */ public class CastArrayUtil { private CastArrayUtil(){} /** * 将基本类型数组转换为对应的包装类型数组 * * @param original * @return ...

小伍的程序之路 2309

java byte 操作_最全面的Java字节byte操作,处理Java基本数据的转换及进制转换操作工具,流媒体及java底层开发项目常用工具类...

前言:用于处理Java基本数据的转换及进制转换操作工具一、实现功能1、int与byte互转2、int与byte[]互转3、short与byte互转4、short与byte[]互转5、16位short与byte[]互转6、long与byte[]互转7、byte[]与inputstream互转8、byte与String互转9、16进制字符转int10、十进制转2进制11、byte[]转16进制字符12...

weixin_39602637的博客 570

Java之——基本数据类型与byte数组相互转化

我们直接上代码 package cn.com.eteamsun.utils; import java.nio.charset.Charset; /** * Java基本数据类型和byte数组相互转化 * @author liuyazhuang * */ public class ByteUtil { public static byte[] getBytes(short data)

冰河的专栏 4640

java中byte数组与int,long,short间的转换 .

package com.util;    /**  *   *   * 文件名称: com.born.util.ByteUtil.java  * 文件描述: byte转换工具  * 版权所有: 版权所有(C)2001-2006  * 公 司: bran  * 内容摘要:  * 其他说明:  * 完成日期:2011-7-18  * 修改记录0:无  *   *   * @version 1.0  *

juce的专栏 615
上一篇: LitePal save保存数据实际无效的问题
下一篇: byte[]转十六进制String 十六进制String转byte[]
github_as
博客等级 码龄9年 2粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值