是否可以将 int 数组
转换为
char 数组
?如果是这样 - 如何
?
我目前正在做一个项目,我需要<code>创建一个包含<code>字母表的字符数组。我当前的code
创建了一个int数组
(应该将转换为
字符数组
-在一行中!):
< code >返回IntStream.range('a ',' z' 1)。to array();
那我们就保持一行:
return IntStream.range('a', 'z' + 1).mapToObj(i -> Character.valueOf((char) i)).toArray(Character[]::new);
这将从IntStream
转换为Stream
编辑:
修复了上面的行功能,有更好的解决方案,但我仍然试图再次找到它。它当前返回一个
Character[]
数组。
没有1行限制,只需重新制作数组就很简单,将
a
视为0索引。
char[] back = new char[('z' + 1) - 'a'];
IntStream.range('a', 'z' + 1).forEach(i -> back[i - 'a'] = (char) i);
return back;
从Java-11开始,您可以使用< code >。mapToObj(Character::toString)而不是< code >。mapToObj(c -
return IntStream.rangeClosed('a', 'z')
.mapToObj(Character::toString)
.collect(Collectors.joining())
.toCharArray();
是的,我们缺少一个生成char数组的stream方法。也许是整个CharStream类。无论如何,不,您不能在int[]
和char[]
之间进行转换。
与此同时,这条线越来越长,但它是有效的:
return IntStream.rangeClosed('a', 'z')
.mapToObj(c -> Character.toString((char) c))
.collect(Collectors.joining())
.toCharArray();
这给出了一个包含
[a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z]
问题内容: 我有一个Swift程序,可以与C库互操作。这个C库返回一个内部带有数组的结构,如下所示: 该定义已正确导入到Swift中。但是,该字段被解释为8个元素(类型为)的 元组 ,我不知道如何使用Swift 将其转换为a 。 没有可以接受元组的初始化程序,并且似乎不可能获得指向元组的第一个元素的指针(因为类型可以是异构的,这并不奇怪)。 现在,我最好的主意是创建一个微型C函数,该函数接受指向结
现有两个名为getDetails(…)的方法 。一个需要至少一个必需参数,另一个需要一个集合(不验证集合的内容/大小)。 问题是集合有时会作为空传递,并且根据我的业务案例,我总是期望至少传递一个值。因此,我需要将该方法设为私有,它接受集合。 我计划将下面的方法作用域设置为private,这样调用者就不会使用零属性调用此方法。 调用方方法之一是将集合对象传递给下面的getDetails, id.ge
问题内容: 我是Java编程的新手。我的问题是,我有一个数组,但是当我尝试将其转换为数组时,我不断 我的代码是 任何帮助将是极大的感谢!!! 问题答案: 要摆脱其他空格,您可以像这样更改代码:
问题内容: 我的方法有问题。 在客户端,我想要一个数组而不是JSON 我怎样才能做到这一点? 客户代码: 我的方法返回,但我想从中提取数字,以便使用这些数字进行计算(例如作为)。 我公开了作为JSONObject的功能。 然后我得到错误:无法从JSONObject转换为int [] 2种其他方式 这次我得到:无法从JSONArray转换为int [] … 反正还是行不通.. 问题答案: 我从来没有
问题内容: 我希望此代码显示: 问题答案: 在将导致的一个单列表。 如果更改为,它将按预期工作。不知道这是否对您有帮助。
问题内容: 下面是一个代码片段, 但是我得到的是空输出。 我将得到1作为输出。 有人可以解释吗?如果我想像第一个代码片段一样将int转换为char,该怎么办? 问题答案: 会打印出ascii值为1的字符(首字符,这是不可打印的)。 将以ascii值49输出一个字符(一个对应于“ 1”) 如果要转换数字(0-9),则可以将数字加48并进行转换,例如;。 如果要转换 as asi的ascii值,可以使