public static void main(String [] args){
String a="y";
int p,q;
int j=0;
ArrayList<Integer> saffy=new ArrayList<Integer>();
int [] s=new int[saffy.size()];
Scanner input=new Scanner(System.in);
while(a.equals("y")){
System.out.println("请输入数字:");
saffy.add(input.nextInt());
System.out.println("是否继续输入? y/n");
a=input.next();
}
for(int i=0;i<saffy.size();i++)
{
s[i]=saffy.get(i+1);
}
String a="y";
int p,q;
int j=0;
ArrayList<Integer> saffy=new ArrayList<Integer>();
int [] s=new int[saffy.size()];
Scanner input=new Scanner(System.in);
while(a.equals("y")){
System.out.println("请输入数字:");
saffy.add(input.nextInt());
System.out.println("是否继续输入? y/n");
a=input.next();
}
for(int i=0;i<saffy.size();i++)
{
s[i]=saffy.get(i+1);
}
把 int [] s=new int[saffy.size()];这一行代码
移到for()之前,否则s会被初始化成长度为0的数组。把
s[i]=saffy.get(i+1);
换成
s[i]=saffy.get(i);
因为ArrayList存储元素也是从下表0开始的
把 int [] s=new int[saffy.size()];这一行代码
移到for()之前,while()之后,否则s会被初始化成长度为0的数组。把
s[i]=saffy.get(i+1);
换成
s[i]=saffy.get(i);
因为ArrayList存储元素也是从下标0开始的