gpt4 book ai didi

java - List to String,你能帮忙重构这个(小)方法吗?

转载 作者:搜寻专家 更新时间:2023-10-31 08:30:51 27 4
gpt4 key购买 nike

我们使用这个小工具方法。但我们不喜欢它。由于它不是很重要(无论如何它都有效......),我们忘记了它。
但这很丑陋,因为我们必须遍历整个数组,才能转换它从 Byte[]byte[]
我在看:

  • 一种无需遍历即可将 Byte[] 转换为 byte[] 的方法
  • 或用于将列表转换为字符串的实用方法

public static String byteListToString(List<Byte> l, Charset charset) {
if (l == null) {
return "";
}
byte[] array = new byte[l.size()];
int i = 0;
for (Byte current : l) {
array[i] = current;
i++;
}
return new String(array, charset);
}

最佳答案

您的方法几乎是唯一的方法。您可能会发现一个外部库可以完成全部或部分工作,但它基本上会做同样的事情。

但是,您的代码中有一件事是一个潜在的问题:调用 new String(array) 时,您正在使用平台默认编码将字节转换为字符。操作系统和语言环境设置之间的平台编码不同——使用它几乎总是一个等待发生的错误。这取决于您从哪里获取这些字节,但它们的编码应该在某处指定,作为参数传递给方法并用于转换(通过使用带有第二个参数的 String 构造函数)。

关于java - List<Byte> to String,你能帮忙重构这个(小)方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1096868/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com