当前位置: 首页 > 面试题库 >

Java如何将char数组转换回字符串?

孟振
2023-03-14
问题内容

我有一个char数组:

char[] a = {'h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'};

我目前的解决方案是

String b = new String(a);

但是肯定有更好的方法吗?


问题答案:

不,该解决方案是绝对正确的,而且非常少。

但是请注意,这是一种非常不寻常的情况:因为String是在Java中专门处理的,所以"foo"实际上甚至是一个String。因此,char在普通代码中不需要将String拆分为单个s并将其重新连接。

将此与C / C 进行比较,在C / C 中,"foo"你的chars捆绑在一侧和string另一侧以零字节结尾,并且由于传统方法而在它们之间进行了许多转换。



 类似资料:
  • 问题内容: 是否存在将“ \ uFFFF”之类的字符串转换为字符的标准方法,即六个字符的字符串包含一个Unicode字符的表示形式? 问题答案: 该值直接解释为所需的字符串,整个序列实现为单个字符。 换句话说,如果要对值进行硬编码: 请注意,这似乎不是适当的Unicode字符,但请尝试使用例如。 在此处阅读有关Unicode转义的信息

  • 问题内容: 我有一个一维String数组,我想将其转换为一维字节数组。我该怎么做呢?这需要ByteBuffer吗?我怎样才能做到这一点?(字符串可以是任意长度,只想知道如何执行这样的操作。将其转换为字节数组后,如何将其转换回String数组? -担 问题答案: 数组到数组 ,应该 手动 将其转换为两边,但是如果只有一个String,则可以和; 像这样 对于string []中的一个字节[],您必须

  • 问题内容: 我正在尝试在Go代码中实例化C结构。该结构的定义如下(在我无法修改的外部库中): 在执行过程中,我这样做: 但是它不能编译,因为: 字段值中不能使用cStr(类型* C.char)作为类型[256] C.char 我试过强制([256] C.char)(cStr),但显然也不起作用。 有没有办法实现我想做的事情? 问题答案: 最简单的解决方案是将结构的字段定义更改为char-point

  • 问题内容: 如何将Java字符串转换为ASCII字节数组? 问题答案: 使用该方法,为其指定适当的名称(或名称)。 例: (Java 7的前:)

  • 问题内容: 我在将int64_t转换为char数组并返回时遇到麻烦。我不知道下面的代码有什么问题,对我来说,这完全符合逻辑。该代码适用于如图所示的代码,但第二个数字显然不在int64_t范围内。 输出是 该代码还给出了两个我不知道如何摆脱的警告。 问题答案: 这很简单,问题在于您正在移位char数组中的位,但是大小为4个字节(向上转换为),因此您的移位超出了范围。尝试将其替换为您的代码: 这样,您

  • 我得到一个错误读数: