byteBuffer中getInt();

问题描述

请问这个getInt()到底返回是多少啊?

解决方案

解决方案二:
似乎没找到这个方法getInt()返回在一定上int类型的
解决方案三:
我的哥,我也知道是int类型的,但是我想知道他是怎么算出int的
解决方案四:
在字节流里读取4个Byte,构成一个Int返回给你咯。从字节流里怎么知道你要的数据类型是什么,只能按照你的意愿去解释字节流,你要int,那就读4个字节解释成int给你,你要char,那就从字节流里读取2个字节解释成char返回给你,你要Byte,你就只读取一个字节返回给你。
解决方案五:
引用3楼yao2007的回复:

在字节流里读取4个Byte,构成一个Int返回给你咯。从字节流里怎么知道你要的数据类型是什么,只能按照你的意愿去解释字节流,你要int,那就读4个字节解释成int给你,你要char,那就从字节流里读取2个字节解释成char返回给你,你要Byte,你就只读取一个字节返回给你。

正解,ByteBuffer是个很神奇的东西。
解决方案六:
谢谢啊
解决方案七:
ByteBuffer中getInt()这个函数是抽象(abstract)的,应该将其覆盖后才能使用啊!无法直接使用啊!
解决方案八:
getInt根据ByteBuffer中设定的字节序(默认为Big-Endian)读取4个字节的数据。假设这4个字节依次为a,b,c,d,那BE字节序就采用这样的方式返回int:return(((a&0xff)<<24)|((b&0xff)<<16)|((c&0xff)<<8)|((a&0xff)<<0));如果是LE字节序的话就采用这样的方式:return(((d&0xff)<<24)|((c&0xff)<<16)|((b&0xff)<<8)|((a&0xff)<<0));

时间: 2024-12-21 13:14:36

byteBuffer中getInt();的相关文章

NIO ByteBuffer问题

问题描述 一直以来对ByteBuffer一知半解,对于如下问题傻傻分不清:ByteBuffer是缓存,NIO中的Socket也有读写缓存,网卡也有缓存,它们之间关系如何?本人的理解是,ByteBuffer属于应用级别缓存,它跟ShortBuffer,IntBuffer等等都继承自Buffer,只是不同基础数据类型的缓存,它从Socket的读缓存中读取数据,它将用户用socketChannle.write(ByteBuffer)写入到ByteBuffer中的数据写入到Socket写缓存,然后Soc

求助) Java中如何获取数组中的有效数据长度

问题描述 Java中如何获取数组中的有效数据长度?请各位大虾指点一二,谢谢!如:bytearr[]=newbyte[100];现在我向arr中输入任意数(-128~127),请问如何知道我已经输入多少个了呢? 解决方案 解决方案二:for循环呗遍历一次就行.解决方案三:使用一个变量如count记录,输入一个就把count加1.解决方案四:遍历吧解决方案五:要是那样存数,你不如用Vector或其它的,那个容易找,解决方案六:遍历是可以,问题是该用什么做基准值呢?看样子只能用动态数组了解决方案七:用

Java网络编程从入门到精通(34):读写缓冲区中的数据---使用get和put方法按顺序读写单个数据

本文为原创,如需转载,请注明作者和出处,谢谢! 上一篇:Java网络编程从入门到精通(33):非阻塞I/O的缓冲区(Buffer)     对于缓冲区来说,最重要的操作就是读写操作.缓冲区提供了两种方法来读写缓冲区中的数据:get.put方法和array方法.而get.put方法可以有三种读写数据的方式:按顺序读写单个数据.在指定位置读写单个数据和读写数据块.除了上述的几种读写数据的方法外,CharBuffer类还提供了用于专门写字符串的put和append方法.在本文及后面的文章中将分别介绍这

Java NIO API详解

详解 在JDK 1.4以前,Java的IO操作集中在java.io这个包中,是基于流的同步(blocking)API.对于大多数应用来说,这样的API使用很方便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO.从JDK 1.4起,NIO API作为一个基于缓冲区,并能提供异步(non-blocking)IO操作的API被引入.本文对其进行深入的介绍. NIO API主要集中在java.nio和它的subpackages中: java.nio 定义了Buff

NIO.2 入门,第 2 部分: 文件系统 API

简介: 本文是介绍 More New I/O APIs for the Java Platform(NIO.2)的两部分系列文章的第二部分, 本文涵盖了在新的 java.nio.file 包及其子包中的大部分重要的类与功能. 正如在第一部分 中对 NI0.2 异步通道 API 的讨论,在本文中,作者利用大量的代码示例来论证相关的概念. 本文是介绍 Java 7 中的 More New I/O APIs for Java (NIO.2) 的两部分文章的第二部分. 正如在 第一部分 中探索的异通道

JAVA NIO存在的问题

    JAVA 包含最新的版本JDK1.8的NIO存在一些问题,这些问题需要在编写NIO程序时要格外关注: NIO跨平台和兼容性问题     NIO是底层API,它的实现依赖于操作系统针对IO操作的APIs. 所以JAVA能在所有操作系统上实现统一的接口,并用一致的行为来操作IO是很伟大的.     使用NIO会经常发现代码在Linux上正常运行,但在Windows上就会出现问题.所以编写程序,特别是NIO程序,需要在程序支持的所有操作系统上进行功能测试,否则你可能会碰到一些莫明的问题.   

服务器-java 关于NIO实现UDP数据传输问题 ,急谢谢,C币不足请不要介意

问题描述 java 关于NIO实现UDP数据传输问题 ,急谢谢,C币不足请不要介意 各位大侠好,小弟想问一下问题,搞了一两天没有搞明白的.因为要实现一个UDP传输服务端,于是在网上找了很多资料然后就写了一个.但是写好之后发现有两个很严重的问题,希望各位大哥给点意见或者思路去解决.问题一:启动服务端,同时也启动客户端,客户端传输数据服务器正常接收,但是断开客户端后,再启动客户端,服务器就收不到任何客户端发送的消息,好像是服务器关闭了UDP一样,但是重启服务器后(重新打开UDP)客户端既可以发送信息

密码的故事 (转自MSDN)

密码的故事 Billy Hollis 2002 年 3 月 14 日 本文是由一个问题引出的.我需要一种将密码保存在加密文件中的方法,因为我需要记住许多密码,但记忆力却已大不如前.我知道有许多商用工具能够做到这一点,但我感到学习 .NET 中的一项新技术真的很有好处.我用 Visual Basic .NET 完成了一个简单而完整的程序,用于加密和解密文件,从中学到了许多知识.既然加密对于多种开发都是一个重要问题,本文就介绍一下如何构造这样的程序.有各种低级别的技术可以用于加密,如 Microso

理解Java NIO

基础概念 • 缓冲区操作 缓冲区及操作是所有I/O的基础,进程执行I/O操作,归结起来就是向操作系统发出请求,让它要么把缓冲区里的数据排干(写),要么把缓冲区填满(读).如下图 • 内核空间.用户空间  上图简单描述了数据从磁盘到用户进程的内存区域移动的过程,其间涉及到了内核空间与用户空间.这两个空间有什么区别呢?  用户空间就是常规进程(如JVM)所在区域,用户空间是非特权区域,如不能直接访问硬件设备.内核空间是操作系统所在区域,那肯定是有特权啦,如能与设备控制器通讯,控制用户区域的进程运行状