开始的几行 代码:
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int num = in.nextInt();
        float a[num];
......float a[num] 报错。请问为啥?
以及如何建立一个float型的、num长的数组?
谢谢!        

解决方案 »

  1.   

    数组长度必须在编译时确定!
    如需要动态数组请用ArrayList!
      

  2.   

    。。
    C里面的数组下标不能是变量
    但是Java好像可以是表达式。。
      

  3.   

    ArrayList是容器,通过添加和删除元素,就可以动态改变数组的长度,他的底层是以数组实现的。
    数组长度必须在编译时确定
      

  4.   


    import java.util.Scanner;public class TEst66 {
    public static void main(String[] args){
      Scanner in = new Scanner(System.in);
            int num = in.nextInt();
            float[] a = new float[num];
            for(int i = 0;i < num; i++){
             a[i] = i;
            System.out.println(a[i]);
            }
    }
    }
      

  5.   

    float a[num]; 
    a[num]要初始化,局部变量必须先初始化
      

  6.   

    float a[num] 报错。请问为啥?  数组长度必须在编译时确定! 
    如需要动态数组请用ArrayList!以及如何建立一个float型的、num长的数组?
     int num = in.nextInt();
    float[] a = new float[num];