java数组越界异常并捕获_(Java)数组越界异常

所以,我一直在为我的计算机科学课程编写一些代码来计算热指数。我有麻烦加载数据从文本文件,我被指示与该程序将要使用的数组一起工作。你看到的块被注释掉了,这是我正在尝试的另一个解决方案,它也不能工作......我应该如何解决它?谢谢!(Java)数组越界异常

import java.util.Scanner;

import java.io.File;

import java.io.IOException;

public class HeatIndex

{

public static void main(String [] args) throws IOException

{

Scanner keyWestHumidScan = new Scanner(new File("KeyWestHumid.txt"));

Scanner keyWestTempScan = new Scanner(new File("KeyWestTemp.txt"));

int counter1 = 0;

int counter2 = 0;

int [] keyWestHumid = {};

double [] keyWestTemp = {};

String header1 = " Heat index: Key West, Florida ";

String header2 = "\n Months \n ";

String [] months = {"Jan ", "Feb ", "Mar ", "Apr ", "May ", "Jun ", "Jul ", "Aug ", "Sep ", "Oct ", "Nov ", "Dec ", "Avg \n"};

String header3 = "*************************************************************************************";

String [] Labels = {"Temp (F) \n", "Hudimitiy (%) \n", "HI (F) "};

//read keyWestHumid into array

while(keyWestHumidScan.hasNext())

{

keyWestHumid[counter1] = keyWestHumidScan.nextInt();

counter1++;

//String data1_parse = keyWestHumidScan.next();

///int data1 = Integer.parseInt(data1_parse);

//keyWestHumid[counter1] = data1;

//counter1++;

}

//read keyWestTemp into array

while(keyWestTempScan.hasNext())

{

String data2_parse = keyWestTempScan.next();

double data2 = Double.parseDouble(data2_parse);

keyWestTemp[counter2] = data2;

counter2++;

}

System.out.println(header1);

System.out.print(header2);

for(String headData:months) {

System.out.print(headData);

}

System.out.println(header3);

for(String headData:Labels) {

System.out.print(headData);

}

}

}

+2

keyWestTemp是大小为0如果你不知道你的尺寸数组将在您创建它时使用List代替(通常的实现是ArrayList) –

+0

该异常会告诉您发生了哪一行,您尝试获取的索引以及容器的大小。用它来解决这个问题,或者至少告诉我们这3件事情。 –

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:深蓝海洋 设计师:CSDN官方博客 返回首页

打赏作者

陈莽昆

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值