我们查看D:\jdk1.5.0\src\java\io源码包中DataOutputStream的实现可以看到:
public final void writeShort(int v) throws IOException { out.write((v >>> 8) & 0xFF); out.write((v >>> 0) & 0xFF); incCount(2); }
public final void writeInt(int v) throws IOException { out.write((v >>> 24) & 0xFF); out.write((v >>> 16) & 0xFF); out.write((v >>> 8) & 0xFF); out.write((v >>> 0) & 0xFF); incCount(4); }
public final void writeLong(long v) throws IOException { writeBuffer[0] = (byte)(v >>> 56); writeBuffer[1] = (byte)(v >>> 48); writeBuffer[2] = (byte)(v >>> 40); writeBuffer[3] = (byte)(v >>> 32); writeBuffer[4] = (byte)(v >>> 24); writeBuffer[5] = (byte)(v >>> 16); writeBuffer[6] = (byte)(v >>> 8); writeBuffer[7] = (byte)(v >>> 0); out.write(writeBuffer, 0, 8); incCount(8); }
public final void writeChar(int v) throws IOException { out.write((v >>> 8) & 0xFF); out.write((v >>> 0) & 0xFF); incCount(2); }
可以看到,这个类的writeChar()方法占用两个字节,因为Java是Unicode的。如果是和java服务器进行通讯,那么不会有任何问题。但如果是和C/C++服务器进行通讯,那么就很容易出现问题。而且这个类里面的long类型是写入8个字节,所以,如果你的服务器不是用java写的,最好不要调用这个类里的方法进行通讯。
|
相关推荐
根据Java的定义,`(a % b)` 的结果与 `a` 有相同的符号,这意味着当 `i` 是一个负奇数时,`i % 2` 实际上会得到 `-1`,而不是 `1`。因此,`isOdd` 方法会错误地返回 `false`。为了解决这个问题,我们可以修改方法,...
### JAVA 解惑(解析JAVA开发中的95个疑惑点) #### 知识点一:取余操作符在处理负数时的行为 **标题**: 奇数性 **描述**: 本节通过一个示例解释了Java中取余操作符(`%`)在处理负数时的行为特点。 **详细解释*...
基于Java语言的NetCDF文件解析,使用了netcdf4和opencsv两个库,最终将解析后的数据导出为CSV,附依赖文件、源代码及一个测试数据样例。 可结合本人的博客...
在这个“关于CoreJava同步的疑惑例子”中,我们将探讨Java中的同步机制,以及如何通过示例代码`Bank.java`, `TransferRunnable.java`, 和 `SynchBankTest.java`来理解这个概念。 1. **同步的必要性** 当多个线程...
它涵盖了Java的基础知识、常见疑惑点以及易错知识点,旨在帮助Java初学者和进阶者解决实际编程中的困扰。 1. **基础概念解析**: - 类与对象:Java是一种面向对象的语言,理解类的定义、对象的创建及其生命周期至...
这份"java期末考试试题两套(答案)+选择(附解析)"的资源,为学习者提供了一个全面理解和检验Java知识的宝贵机会。试题集通常包含了各种类型的问题,如选择题、填空题、简答题等,涵盖了Java的基础语法、面向对象编程...
《JAVA解惑》是Java开发者领域的一本经典著作,它被广大...总之,《JAVA解惑》是一本涵盖了Java核心知识点、实战技巧和高级特性的宝典,无论你是Java新手还是老手,都能从中受益匪浅,解决你在Java编程中的种种疑惑。
《Java解惑》是一本专为Java初学者和进阶者设计的指南,旨在帮助读者解决在学习和...以上知识点只是《Java解惑》中的一部分,通过深入学习和实践,你可以逐步解开Java编程中的种种疑惑,成为一名更优秀的Java开发者。
"Java面试解惑宝典(高清PDF版)"提供了一份全面的学习资源,帮助Java开发者准备面试,解答疑惑。 首先,《Java程序员面试宝典》涵盖了基础语法、面向对象编程、集合框架、多线程、网络编程、I/O流、设计模式等核心...
Java语言程序设计基础篇是Y.Daniel Liang教授的一本经典教材,主要针对初学者,旨在教授Java编程的基础知识。本书涵盖了从语法基础到面向对象编程的重要概念,为读者提供了全面的学习路径。课后编程答案集是学习过程...
本文将围绕这两个概念进行深入探讨,并针对初学者常见的疑惑点进行解答。 #### Java面向对象基础 Java是一种完全面向对象的语言,几乎所有的功能都是通过类和对象来实现的。在Java中,类(Class)是一种定义对象的...
6. **Java 十大基础笔记整理(PDF).zip**:这是一份整理好的Java基础知识点的笔记,涵盖了类、对象、接口、继承、异常处理、输入输出、集合框架等关键概念,适合初学者和复习者参考。 通过这些文件,我们可以系统...
该压缩包文件“Thinking In Java 练习题答案 第四版]Annotated+Solution+Guide+for+TIJ4.pdf”包含了《Thinking in Java》第四版的全部习题解答,这些解答通常会包括对问题的解析、代码实现以及可能的优化建议。...
通过逐步解析和修改源代码,学习者将能够更好地掌握Java编程,并逐步建立起自己的编程思维。记住,实践是检验理解的最好方式,所以一定要动手尝试,遇到问题不要怕,这是成长的过程。在"万卷图书论坛"中寻找答案,...
《Java解惑(整理版本)》是一篇针对Java编程语言常见问题和疑惑的详细解析文章。博主通过深入探讨Java源码和使用工具的角度,帮助开发者解决实际开发中遇到的问题。以下将围绕标题和描述中的知识点进行展开: 1. *...
1. **Java基础知识**:Java是一种面向对象的语言,其基础包括数据类型、变量、运算符、流程控制(如if-else、switch、for、while等)、类和对象、封装、继承、多态等。在解答中,你将看到如何声明、初始化和使用这些...
### JAVA编程利器Eclipse——深度解析与应用指南 #### 一、引言 在现代软件开发领域,Java作为一门主流的编程语言,其强大的功能和广泛的适用性使其成为众多开发者和企业的首选。然而,高效的Java开发离不开优秀的...
5. **泛型**:Java 5引入的泛型是一种强大的类型系统增强,它允许在编译时检查容器中的对象类型,减少类型转换的麻烦,提高代码的健壮性。 6. **异常处理**:异常处理是Java编程中的重要部分,书中详细解释了try-...
"JAVA面试题解惑系列.pdf"可能是一系列的面试问题解答,针对常见的面试疑惑给出详尽的解析。这份资料可能深入探讨了一些复杂的技术问题,例如JVM内存模型、垃圾回收机制、设计模式的应用,以及如何优化Java代码等。 ...
这份资料旨在帮助Java初学者深化理解,巩固课堂所学,解决课后练习中的疑惑,同时也适合有一定基础的开发者进行自我提升。 在学习Java的过程中,理论知识和实践操作是相辅相成的。"疯狂Java"系列教程以其深入浅出、...