Java ArrayList.add方法不工作

Java ArrayList.add方法不工作,java,methods,arraylist,add,Java,Methods,Arraylist,Add,我是java的初学者,我不明白为什么这不起作用。我正试图编写一个程序,将基数为10的数字转换为二进制数字,但我遇到了ArrayList的问题。我无法使用ArrayList的add方法: import java.util.ArrayList; import java.util.Scanner; public class DecimalToBinary { public static void main (String[] args){ Scanner reader = new Scann

我是java的初学者,我不明白为什么这不起作用。我正试图编写一个程序,将基数为10的数字转换为二进制数字,但我遇到了ArrayList的问题。我无法使用ArrayList的add方法:

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

public class DecimalToBinary {
public static void main (String[] args){
    Scanner reader = new Scanner (System.in);

    System.out.println("This program converts a decimal number to binary.");

    int decimal;
    ArrayList<int[]> binary = new ArrayList<int[]>();

    //Gets decimal number
    System.out.print("Enter base 10 number: ");
    decimal = reader.nextInt();

    //Adds 1 to binary and then adds the remainders of decimal/2 after that until decimal is 1 
    binary.add(1, null);
    while (decimal != 1){
        binary.add(1, decimal%2);//This is where I get the error
        decimal = decimal/2;
    }//Ends While loop
}//Ends main
import java.util.ArrayList;
导入java.util.Scanner;
公共类十进制{
公共静态void main(字符串[]args){
扫描仪阅读器=新扫描仪(System.in);
System.out.println(“此程序将十进制数转换为二进制。”);
整数十进制;
ArrayList binary=新的ArrayList();
//获取十进制数
System.out.print(“输入基数为10的数字:”);
decimal=reader.nextInt();
//将1添加到二进制中,然后再添加十进制数/2的余数,直到十进制数为1
binary.add(1,null);
while(十进制数!=1){
binary.add(1,十进制%2);//这就是我得到错误的地方
十进制=十进制/2;
}//循环时结束
}//主要目的
}//结束十进制二进制类

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

binary.add(3);
添加(3);
arraylistbinary=newarraylist();
添加(3);
在这一行:

ArrayList<int[]> binary = new ArrayList<int[]>();
您正在尝试将“十进制%2”添加到二进制的位置1。因为十进制%2是一个int,而不是int的数组,所以会出现编译器错误

将二进制文件的声明更改为:

ArrayList<Integer> binary = new ArrayList<Integer>();
arraylistbinary=newarraylist();
在这一行:

ArrayList<int[]> binary = new ArrayList<int[]>();
您正在尝试将“十进制%2”添加到二进制的位置1。因为十进制%2是一个int,而不是int的数组,所以会出现编译器错误

将二进制文件的声明更改为:

ArrayList<Integer> binary = new ArrayList<Integer>();
arraylistbinary=newarraylist();