Java,用提供的数字填充数组

时间:2014-11-29 13:17:21

标签: java arrays loops arraylist java.util.scanner

import java.util.*;
public class IncreasingSum
{
    public static void ArrayList(int[] args)
    {
        Scanner kb=new Scanner(System.in);
        System.out.print("Enter a number:");
        int num=kb.nextInt();
        {   for (int loop=0; loop<num; loop++)
            ArrayList <X> myList = new ArrayList<X>();
            myList.add(loop);
        }
    }
}

我导入了java.util。*;但它一直在ArrayList上给出错误。

4 个答案:

答案 0 :(得分:2)

有很多问题

  • 应该是static void main(String [] args),而不是static void ArrayList(int [] args)
  • X应为整数
  • 循环应该在add()周围,而不是新的ArrayList()
  • 在循环外不需要额外的括号

可能的缺陷

  • 代码应该使用add(n)而不是添加(循环)到&#34; fill&#34;具有相同数字的数组
  • 如果超过true则只使用Collections.fill(myList,num);并摆脱你的循环

固定

import java.util.ArrayList;
import java.util.Scanner;

public class IncreasingSum {
    public static void main(String[] args) {
        Scanner kb = new Scanner(System.in);
        System.out.print("Enter a number:");
        int num = kb.nextInt();
        ArrayList<Integer> myList = new ArrayList<Integer>();

        for (int loop = 0; loop < num; loop++) {
            myList.add(loop);
        }
    }
}

答案 1 :(得分:1)

语法错误

您在ArrayList行上出错的原因是您实例化它的方式。

以下是如何将ArrayLists与泛型一起使用的示例:

http://docs.oracle.com/javase/tutorial/java/generics/why.html

基本上在声明中,您需要将X替换为要存储在ArrayList中的元素类。在你的情况下,这将是整数。

ArrayList <X> myList = new ArrayList<X>();        //Throws error    

ArrayList<Integer> myList=new ArrayList<Integer>();  //Will suit your need 

一旦修复了列表声明,您还需要使用for循环修复该行。你的for循环的起始大括号应该在循环声明之后来修复你的其他语法错误。

{   for (int loop=0; loop<num; loop++)   //Throws error for your program 

for (int loop=0; loop<num; loop++){      //The declaration you need

其他潜在错误:

您还需要在课程中包含main方法来执行您的程序。

<强>供参考:

方法名称的Java约定以小写字母开头。所以,即使你有一个名为ArrayList的方法,arrayList也会更符合方法命名约定。

https://docs.oracle.com/javase/tutorial/java/javaOO/methods.html

答案 2 :(得分:0)

使用名为Integer的特定类作为泛型,因为在for循环之前在数组列表中添加Integer并在循环中添加元素:

ArrayList <Integer> myList = new ArrayList<Integer>();

答案 3 :(得分:0)

for循环后需要括号。现在,for循环中唯一的指令是多次创建新的ArrayList。数组列表应在上面声明for循环。