java 实现取int型的第二个字节的数
目录
- 取int型的第二个字节的数
- 1.首先创建 Bytebuffer
- 2.通过位运算计算
- 3.附一个int转byte数组
- int的取值范围
- 例如7的二进制表示形式为
- 例如-7的二进制表示为
取int型的第二个字节的数
无意中看到某个题目,前提条件,一个byte最多表示256位,因为其是由8个位表示 ,八个1 最多表示256位。
一个int由32位组成,所以是4个byte表示。题目要求是给定一个int数字,问第二个byte是多少。刚开始不会写。
再后来复习nio时,突然想到这题。
1.首先创建 Bytebuffer
其内部是由byte组成的数组。因为我们保存一个int 只需要创建一个大小为4byte的即可。下面看代码。
public static void main(String[] args) throws IOException { ByteBuffer bb=ByteBuffer.allocate(4); //创建大小为4的byteBuffer bb.asIntBuffer().put(5566); //以int视图将任意int数存进去 System.out.println(Arrays.toString(bb.array())); //打印出改bytebuffer,其中想要第几个byte就取出就好了 }
结果
[0, 0, 21, -66]
2.通过位运算计算
首先
int a=5566;
a=a>>8;
a=a&0xff;
得到的a就是 第二位的值
3.附一个int转byte数组
private static byte[] intToByte(int in){ byte [] b=new byte[4]; b[3]= (byte) (in&0xff); b[2]= (byte) (in>>8 &0xff); b[1]= (byte) (in>>16 &0xff); b[0]= (byte) (in>>24 &0xff); return b; }
int的取值范围
int型的数据字节长度是4,一共是32位,第一位用于表示正负号,其他位的数字组成它所代表的值,
例如7的二进制表示形式为
00000000 00000000 00000000 00000111
当表示负数的时候,则采用的是补码的形式,第一位是1,
例如-7的二进制表示为
11111111 11111111 11111111 11111001
int型数据的取值范围:-2^31—-2^31-1
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
java中int、double、char等变量的取值范围详析
目录 1.java工具 2.代码简单框架 3.int 4.long 5.double 6.float 7.char 8.byte 9.short 10.总结 1.java工具 1.JDK:Java开发者工具,建议安装1.8版的. 2.IEDA:集成开发环境 2.代码简单框架 public为访问修饰限定符 class为类 HelloWorld为类的名称 public static void main(String[] args)相当于C语言的的main函数 System.out.println()
-
Java 字节数组类型(byte[])与int类型互转方法
代码如下: public class CommonUtils { //高位在前,低位在后 public static byte[] int2bytes(int num){ byte[] result = new byte[4]; result[0] = (byte)((num >>> 24) & 0xff);//说明一 result[1] = (byte)((num >>> 16)& 0xff ); result[2] = (byte)((num >
-
Java如何把int类型转换成byte
这篇文章主要介绍了Java如何把int类型转换成byte,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public static void main(String[] args) { int num = 130; // 此范围超过了byte定义 byte x
-
java 实现取int型的第二个字节的数
目录 取int型的第二个字节的数 1.首先创建 Bytebuffer 2.通过位运算计算 3.附一个int转byte数组 int的取值范围 例如7的二进制表示形式为 例如-7的二进制表示为 取int型的第二个字节的数 无意中看到某个题目,前提条件,一个byte最多表示256位,因为其是由8个位表示 ,八个1 最多表示256位. 一个int由32位组成,所以是4个byte表示.题目要求是给定一个int数字,问第二个byte是多少.刚开始不会写. 再后来复习nio时,突然想到这题. 1.首先创建 B
-
Java利用移位运算将int型分解成四个byte型的方法
package 移位运算; public class 移位运算 { public static void main(String[] args) { //00000111 01011011 11001101 00010101 int n=123456789; //n为需要进行移位处理的32位int型初始值 byte[] a =chai(n); for (int i = 0; i < a.length; i++) { byte b=a[i]; System.out.print(b+" &qu
-
java爬取并下载酷狗TOP500歌曲的方法
是这样的,之前买车送的垃圾记录仪不能用了,这两天狠心买了好点的记录仪,带导航.音乐.蓝牙.4G等功能,寻思,既然有这些功能就利用起来,用4G听歌有点奢侈,就准备去酷狗下点歌听,居然都是需要办会员才能下载,而且vip一月只能下载300首,我这么穷又这么抠怎么可能冲会员,于是百度搜了下怎么免费下载,都是python爬取,虽然也会一点,但是电脑上没安装python,再安装再研究感觉有点费劲,于是就花了半小时做了这个爬虫,技术一般,只记录分析实现过程,大牛请绕行.其中用到了一些库,包括:jsoup.Ht
-
js取float型小数点后两位数的方法
以下我们将为大家介绍 JavaScript 保留两位小数的实现方法: 四舍五入 以下处理结果会四舍五入: var num =2.446242342; num = num.toFixed(2); // 输出结果为 2.45 不四舍五入 以下处理结果不会四舍五入: 第一种,先把小数边整数: Math.floor(15.7784514000 * 100) / 100 // 输出结果为 15.77 第二种,当作字符串,使用正则匹配: Number(15.7784514000.toString().mat
-
java抓取鼠标事件和鼠标滚轮事件示例
java抓取鼠标事件和滚轮事件 复制代码 代码如下: package demo; import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.MouseWheelEvent;import java.awt.event.MouseWheelListener; import javax.swing.JButton;import javax.swing.JFrame;import
-
Java基于高精度整型实现fibonacci数列的方法
本文以实例形式讲述了Java基于高精度整型实现fibonacci数列的方法,分享给大家供大家参考之用.具体方法如下: package com.java.learning.recursion; import java.math.*; public class MainClass { public static void main(String args[]){ for(int i = 0; i < 100; i++){ f(i+1); } } public static BigInteger f(
-
详解JAVA抓取网页的图片,JAVA利用正则表达式抓取网站图片
利用Java抓取网页上的所有图片: 用两个正则表达式: 1.匹配html中img标签的正则:<img.*src=(.*?)[^>]*?> 2.匹配img标签中得src中http路径的正则:http:\"?(.*?)(\"|>|\\s+) 实现: package org.swinglife.main; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream;
-
Java银行取钱线程安全问题实例分析
本文实例讲述了Java银行取钱线程安全问题.分享给大家供大家参考,具体如下: 一 定义一个账户类 public class Account { // 封装账户编号.账户余额的两个成员变量 private String accountNo; private double balance; public Account(){} // 构造器 public Account(String accountNo , double balance) { this.accountNo = accountNo;
-
Java爬取豆瓣电影数据的方法详解
本文实例讲述了Java爬取豆瓣电影数据的方法.分享给大家供大家参考,具体如下: 所用到的技术有Jsoup,HttpClient. Jsoup jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址.HTML文本内容.它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据. HttpClient HTTP 协议可能是现在 Internet 上使用得最多.最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资
-
java爬取豆瓣电影示例解析
为什么我们要爬取数据 在大数据时代,我们要获取更多数据,就要进行数据的挖掘.分析.筛选,比如当我们做一个项目的时候,需要大量真实的数据的时候,就需要去某些网站进行爬取,有些网站的数据爬取后保存到数据库还不能够直接使用,需要进行清洗.过滤后才能使用,我们知道有些数据是非常真贵的. 分析豆瓣电影网站 我们使用Chrome浏览器去访问豆瓣的网站如 https://movie.douban.com/explore#!type=movie&tag=%E7%83%AD%E9%97%A8&sort=re
随机推荐
- sublime text 3配置使用python操作方法
- 用注册表对系统全方位维护
- 详细介绍linux动态网络和静态网络和克隆后的网络配置
- Java中的Web MVC简介_动力节点Java学院整理
- iOS逆向工程之Hopper中的ARM指令详解
- ThinkPHP单字母函数(快捷方法)使用总结
- MySQL中show命令方法得到表列及整个库的详细信息(精品珍藏)
- IIS下PHP连接数据库提示mysql undefined function mysql_connect()
- 基于字符串移位包含的问题详解
- 举例详解Java编程中HashMap的初始化以及遍历的方法
- JS分割字符串并放入数组的函数
- Nodejs如何搭建Web服务器
- C#制作简单的多人在线即时交流聊天室
- 访问和更改关系数据,使用MSSQL外联接
- SQL SELECT 语句的表连接
- mssql 指定字段编号sql语句
- jQuery实现简单的列表式导航菜单效果代码
- jQuery-mobile事件监听与用法详解
- Android实现给TableLayou绘制边框的方法
- c#分页显示服务器上指定目录下的所有图片示例