我有一个需要加密的文本文件。整个文本被分成 6 个字符的 block 。从我截取的文本中,将其分成 6 个字符的 block 后,得到 45 组,每组 6 个字符。
我一次选取一组并执行加密过程。
for (int i = 0; i < group; i++) {
s[i] = input.substring(j, j + block_size);
ASCIIMatrx asc = new ASCIIMatrx();
asc.text(s, k1, a1, b1, n);
j += block_size;
}
对于第一次迭代,它采用前六个字符,但对于其余字符,它采用空值。我不知道我错过了什么。
ASCIIMatrx
是一种方法,我将子字符串以及加密所需的 key 传递给该方法。
最佳答案
供引用,默认值为 null
。我认为您在数组中分配的元素比实际需要的元素多,它将填充 null
值(value)观。请参阅JLS :
For all reference types (§4.3), the default value is
null
不要使用固定大小的数组,而是使用 ArrayList
相反:
ArrayList<MyType> arr = new ArrayList<>();
...
arr.add(myType);
请注意,菱形运算符自 Java 7 起可用,如果您使用的是旧版本,则应该
ArrayList<MyType> arr = new ArrayList<MyType>();
关于java - String[] 取空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29704788/