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件事情。 –

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值