我正在关注一个教程,并且遇到了以下代码行:

String target = new String(new char[difficulty]).replace('\0', '0');


difficultyint

这条线是做什么的,它是如何工作的?

最佳答案

new char[difficulty]创建一个长度为difficulty的新字符数组。

以这种方式创建的数组的元素采用该类型的the default value,对于char,该元素为0(或'\u0000'\0),即null character

new String(...)将其转换为长度为difficulty的字符串(其中每个字符仍具有默认值0

.replace('\0', '0')将每个字符替换为'0'Unicode 0字符),从而为您提供一串都是difficulty0字符。

09-18 10:03