在java中删除数组的第一个元素而不使用
我正在尝试读取文件中的一行并将其存储在数组中,执行此操作后,我希望删除数组中的第一个元素,以便长度可以减少1个元素,并使数组的长度与另一个数组相同,以便使用for循环匹配两个数组。我想从文件中读取的行是 “伦敦2 7 24 16-15 8 27”在java中删除数组的第一个元素而不使用,java,Java,我正在尝试读取文件中的一行并将其存储在数组中,执行此操作后,我希望删除数组中的第一个元素,以便长度可以减少1个元素,并使数组的长度与另一个数组相同,以便使用for循环匹配两个数组。我想从文件中读取的行是 “伦敦2 7 24 16-15 8 27” 试试看{ 文件myObj=新文件(“temperatures.txt”); FileReader read=新的FileReader(myObj); 扫描仪myReader=新扫描仪(myObj); 扫描仪输入=新扫描仪(System.in); Lin
试试看{
文件myObj=新文件(“temperatures.txt”);
FileReader read=新的FileReader(myObj);
扫描仪myReader=新扫描仪(myObj);
扫描仪输入=新扫描仪(System.in);
LineNumberReader lines=新的LineNumberReader(读取);
行.跳过(长.最大值);
int len=lines.getLineNumber();
整数计数=len;
字符串ans;
对于(int i=0;i
为什么不在循环中的getData[]的索引值中添加+1
System.out.println(days[j] + ": " +getData[j+1]);
您的问题有几种可能的解决方案
for (int j = 0; j < days.length; j++) {
System.out.println(days[j] + ": " + getData[j + 1]);
}
然后可以使用newData
而不是getData
来打印数字
skip
方法),然后将流复制到数组中
但对我来说,这种方式对于这样一项简单的任务来说太过分了。我认为即使是创建一个副本也有点太多了。您最好只使用第一个解决方案,这是最简单的。我不想将getData的第一个元素添加到循环中,这样我就可以将数字与日期匹配。我不想将getData的第一个元素添加到循环中,这样我就可以将数字与日期匹配
for (int j = 0; j < days.length; j++) {
System.out.println(days[j] + ": " + getData[j + 1]);
}
String[] newData = new String[getData.length - 1];
for (int j = 0; j < newData.length; j++) {
newData[j] = getData[j + 1];
}