在Java中打印二维数组(使用拆分生成)
所以解决了,但现在,在我知道如何将字符串拆分为数组后,我希望这个数组是二维的。 当我想要打印我收到的第二个维度时在Java中打印二维数组(使用拆分生成),java,multidimensional-array,indexoutofboundsexception,Java,Multidimensional Array,Indexoutofboundsexception,所以解决了,但现在,在我知道如何将字符串拆分为数组后,我希望这个数组是二维的。 当我想要打印我收到的第二个维度时 java.lang.ArrayIndexOutOfBoundsException: 17 at IOControl.ReadCsvFile.fillIndex(ReadCsvFile.java:17) at IOControl.ReadCsvFile.<init>(ReadCsvFile.java:89) at en.window.Main.main(Main.java:
java.lang.ArrayIndexOutOfBoundsException: 17
at IOControl.ReadCsvFile.fillIndex(ReadCsvFile.java:17)
at IOControl.ReadCsvFile.<init>(ReadCsvFile.java:89)
at en.window.Main.main(Main.java:48)
这是我填充和打印二维数组的方式:
private void fillIndex(String[][] index, String data, int j)
{
//index is empty, data is my String (read line by line)
//j is the iterator i use for the second dimension of the array
index[j] = data.split(";");
for(int i = 0; i < data.length(); i++)
{
System.out.println("[" +j+ "][" +i+ "] = " +index[j][i]);
}
}
private void fillIndex(字符串[][]索引,字符串数据,int j)
{
//索引为空,数据为我的字符串(逐行读取)
//j是我用于数组第二维的迭代器
索引[j]=数据分割(“;”);
对于(int i=0;i
使用索引[j].length
而不是数据.length()
项目数为
索引[j]。长度=数据。拆分(;”)。长度使用索引[j]。长度而不是数据。长度()
项目数为索引[j]。长度=数据。拆分(;”)。长度我猜它在for循环中,请尝试将其更改为:
index[j] = data.split(";");
for(int i = 0; i < index[j].length; i++)
{
System.out.println("[" +j+ "][" +i+ "] = " +index[j][i]);
}
index[j]=data.split(“;”);
对于(int i=0;i
如果您想遍历索引[j]
的每个部分,而不是数据
我猜它在for循环中,请尝试将其更改为:
index[j] = data.split(";");
for(int i = 0; i < index[j].length; i++)
{
System.out.println("[" +j+ "][" +i+ "] = " +index[j][i]);
}
index[j]=data.split(“;”);
对于(int i=0;i
您希望遍历索引[j]
的每一部分,而不是数据
数据。length()
返回字符串的长度数据
。可能j的有效长度大于或等于data.length。你能给我们你在得到异常时传递的参数吗?你不应该在索引[j]上循环,而不是在数据上循环。length()?data.length()
返回字符串的长度data
。可能j的有效长度大于或等于data.length。你能告诉我们你在得到异常时传递的参数吗?你不应该在索引[j].length而不是data.length()上循环吗?哦,你是对的!谢谢你快速准确的回答,但我到底做错了什么?我原以为数组中字符串的长度与字符串的长度相同:/data。length()是字符数,但索引[j]。length是拆分后字符串的数目()你说得对!谢谢你快速准确的回答,但我到底做错了什么?我认为数组中字符串的长度应该与字符串的长度相同:/data。length()是字符数,但索引[j]。length是拆分()后的字符串数。length()仅用于string对象,而对于数组则是。length@SrinathGanesh谢谢,复制粘贴错误..length()仅适用于字符串对象,对于数组,它是。length@SrinathGanesh谢谢,复制粘贴错误。