【问题标题】:Hold hex in an integer without converting it to decimal将十六进制保留在整数中而不将其转换为十进制
【发布时间】:2018-04-09 21:42:09
【问题描述】:

我有一个十六进制值的表情符号数组,如下所示: int[] emojis = {0x1F37D, 0x2615...}; 我需要将其中一个放在json 字符串中。类似{"number":0x1F37D}...

我有一个对象来存储该值,但问题是当我将十六进制值分配为整数时,它会不断将十六进制值更改为十进制 object.emoji = emojis[position]。然后它继续用十进制值而不是我想要的十六进制值构建 json。

我不能Integer.toHexString(),因为我需要将十六进制值作为数字而不是字符串。

换句话说:我想要这个{"number":0x1F37D}...,我得到这个{"number":3434}...

【问题讨论】:

  • 数字的内部形式不是十进制、十六进制、八进制、二进制等。猫认为是 'base 13' 或你想要的。 Base 它只是供人类使用的外部可打印表单
  • 那么如何将十六进制数存储为十六进制而不是十进制?
  • 你不能在 INT 中保存字符
  • 那么我怎样才能让它们保持在十六进制形式?
  • 似乎是 YX 问题。真正的问题是什么?

标签: java android integer hex gson


【解决方案1】:

您将无法使用 Gson 或大多数其他 JSON 库执行此操作,因为十六进制文字不是有效的 JSON。

【讨论】:

    猜你喜欢
    • 2014-04-16
    • 2010-10-16
    • 1970-01-01
    • 2011-02-10
    • 2015-01-26
    • 1970-01-01
    相关资源
    最近更新 更多