gpt4 book ai didi

java - 二维java数组

转载 作者:行者123 更新时间:2023-11-29 04:45:43 25 4
gpt4 key购买 nike

我是 java 的 super 新手,我想了解下面的代码。

public Something() throws Exception
{
byte[][] value=new byte[2][0];
KeyGenerator kgen = KeyGenerator.getInstance("AES");
kgen.init(128);
SecretKey skey = kgen.generateKey();
value[0]=skey.getEncoded();
skey = kgen.generateKey();
value[1]=skey.getEncoded();

value[0][0]=0x12;value[0][1]=0x33;value[0][2]=0x21;
value[1][0]=0x12;value[1][1]=0x33;value[1][2]=0x21;
}

1)是否可以像第 3 行那样创建一个包含 0 列的字节数组?

2)最后创建了多少列和行,里面的值是多少?

3) 最后两行代码将十六进制值分配给这些特定的列和行?

提前致谢

最佳答案

1)Is it possible to create a byte array with 0 columns like that on line 3?

是的。

2)At the end how many columns and rows are created and what is the value inside them?

首先,数组将包含 2 * 0 = 0 个字节。

然后,在声明数组后不久,您有这些行:

SecretKey skey = kgen.generateKey();
value[0]=skey.getEncoded();

这会将具有 0 列的第一行替换为具有 16 列的行(根据 AES key 规范为 128 位)。

一旦你对两者都这样做,就好像你声明了一个 byte[2][16]

3)The last two lines of code assign hex values to these specific columns and rows?

他们为现在的 2*16 字节数组中的一些字节设置了十六进制值,是的。其他字节将是高度随机的。

关于java - 二维java数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37287078/

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