gpt4 book ai didi

java - 如何将第一个数字 (0) 映射为数组中的 Int?

转载 作者:行者123 更新时间:2023-12-01 20:10:50 25 4
gpt4 key购买 nike

我正在尝试破坏 int 值并将其保存为数组,我尝试使用此方法,它工作正常,除非第一个数字为零时,它将其保存为 1 而不是 0。我该如何解决这个问题?

int k2CombinedEnc = in.nextInt();
int[] k2Enc = Integer.toString(k2CombinedEnc).chars().map(c -> c-='0').toArray();
for(int element: k2Enc) {
System.out.println("encrypted ciphertext is" + element);
}

示例输出:

0010101010
encrypted ciphertext is1
encrypted ciphertext is0
encrypted ciphertext is1
encrypted ciphertext is0
encrypted ciphertext is1
encrypted ciphertext is0
encrypted ciphertext is1
encrypted ciphertext is0

最佳答案

您正在读取整数值。所有前导零都会被删除,因为数字 010 只是 10

将其作为字符串读取,应该没问题。

String k2CombinedEnc = in.nextLine();
int[] k2Enc = k2CombinedEnc.chars().map(c -> c-='0').toArray();

for(int element: k2Enc) {
System.out.println("encrypted ciphertext is" + element);
}

注意:考虑使用Character.digit方法而不是减零:

int[] k2Enc = k2CombinedEnc.chars().map(c -> Character.digit(c, 10)).toArray(); 

关于java - 如何将第一个数字 (0) 映射为数组中的 Int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46734269/

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