为了账号安全,请及时绑定邮箱和手机立即绑定

麻烦各位大神帮忙看一下,为什么报错

package project6;
import java.util.Arrays;
import java.util.Scanner;
public class Hello{
    int[] price;
    int num;
    static String name;
    Scanner input=new Scanner(System.in);
    public Hello(){
        for(int i=0;i<num;i++){
            System.out.println("请输入第"+(i+1)+"个"+name+"笔的价格");
            price[i]=input.nextInt();
         }
         System.out.println(name+"笔的价格为:"+Arrays.toString(price));
     }
     {
         num=3;
     }
     static{
         name="英雄";
     }
     public static void main(String args[]){
          Hello a=new Hello();
     }
}

正在回答

1 回答

数组price[] 没有初始化大小

0 回复 有任何疑惑可以回复我~
#1

慕莱坞8595128 提问者

也就是说无论何时都必须先对数组的长度进行赋值是吗?我之前想的是加上i的大小设定就可以了,那么在构造函数里加上price=new int[num]可以吗?
2019-11-13 回复 有任何疑惑可以回复我~
#2

qq_慕雪8523714 回复 慕莱坞8595128 提问者

是滴,而且你的构造函数还必须是带参数的
2020-01-22 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       529899    人
  • 解答问题       6086    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

麻烦各位大神帮忙看一下,为什么报错

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信