自己代码用toCharArray()遇到的一些BUG
场景1
char[5][5] val;
String s;读入s
val[0] = sc.next().toCharArrya();
无论你new的范围多大,用char数组接收之后,只能访问下标在s.length()之前的下标
场景2
4 4
1111
0000
1111
0000
要求读入这个数据
当我们想要设计特定算法时,想用二维字符数组从1,1开始存数据,但是toCharArray()会直接从地址val[index]开始填,能不能像cpp一样读地址从val[index]+1这样呢?显然报错。但是我们可以投机取巧一下,重新开一个数组接收,再赋值回去,这样也不会影响原来New的数组范围!
for(int i = 1; i <= n; i++) {
char[] tmp = sc.next().toCharArray();
for(int j = 0; j < m;j ++) {
d[i][j+1] = tmp[j];
}
}
欢迎读者指出不足或提问!