如何在java中使用全0来初始化100字节的字节数组

use*_*608 49 java

如何使用全0来初始化java中100字节的字节数组.我想创建100字节数组并用全0来初始化它

wol*_*tle 94

将使用全零自动初始化新的字节数组.你不需要做任何事情.

使用其他值初始化的更一般方法是使用Arrays该类.

import java.util.Arrays;

byte[] bytes = new byte[100];
Arrays.fill( bytes, (byte) 1 );
Run Code Online (Sandbox Code Playgroud)

  • @PeterLawrey我意识到这一点,我认为从其他5个答案中可以清楚地看到这一点.然而,对于从搜索登陆的人来说,他们可能想要用1或其他东西初始化它. (23认同)
  • `Arrays.fill`是多余的,除非你怀疑你已经改变了数组的内容. (13认同)
  • @wolfcastle你是对的,但为什么不在你的答案中说清楚.例如添加注释:"字节已初始化为0,但如果要将其初始化为其他内容,例如1,则为Arrays.fill(bytes,(byte)1); (2认同)

Evg*_*eev 35

只需创建它,因为new byte[100]默认情况下它将初始化为0


Ser*_*hyk 18

byte [] arr = new byte[100] 
Run Code Online (Sandbox Code Playgroud)

默认情况下,每个元素都为0.

您可以在此处找到原始默认值:

Data Type   Default Value
byte        0
short       0
int         0
long        0L
float       0.0f
double      0.0d
char        '\u0000'
boolean     false
Run Code Online (Sandbox Code Playgroud)


c.P*_*.u1 8

byte[] bytes = new byte[100];
Run Code Online (Sandbox Code Playgroud)

使用默认值初始化所有字节元素,对于字节为0,实际上,构造时数组的所有元素都使用数组元素类型的默认值进行初始化.