java - 如何将存储为两个字符 ASCII 字符串的数字转换为二进制?

标签 java binary ascii

我将数字写成 ASCII 码,每个 2 个字节,这浪费了很多空间。我想将这些数字转换为相应的 ASCII 码以节省空间。

有什么想法吗?

最佳答案

如果您指的是字符,Java 使用每个字符两个字节作为其 Unicode 支持的一部分。如果您提供 ASCII 值,Java 会将高位字节设为零。你不会保存任何东西。

如果您指的是 float 、 double 或整数,每个值的字节数也是固定的。

你找错人了。我认为无论您做什么,这都不会为您节省任何东西。

如果您需要那种优化,您最好编写 C 或 C++,而不是 Java。

我的第一个想法是,这是一种没有数据支持的想象优化。唯一可以证明这样的事情的应用是大规模的科学计算。即使那样也不能证明它是合理的,因为您需要比每个值一个字节更高的精度。

关于java - 如何将存储为两个字符 ASCII 字符串的数字转换为二进制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8280091/

相关文章:

java - Eclipse 将此代码视为错误,但它在 Maven 中编译得很好

java - StringBuilder.append 链是否比字符串连接更有效?

python - 字节表示中的\t 和\r 是什么?

java - java中如何将负数转换为二进制?

c++需要字符串的唯一ID但无论顺序如何总是相同

java - Android,如何在项目中包含不是 JAR 文件的特定库?

java - Java 导入语句错误 "The import javax.validation.constraints.NotNull cannot be resolved"

macos - 为什么 __LINKEDIT 有时会关闭 0x1000?

Python 二进制字符串转 ASCII 文本

swift - 在 Swift 中获取整数的字符 ASCII 值