java OJ,运行出错,求解答

img

img


我的错误代码
import java.util.Scanner;
class queue {
int len;
int outnumber;
int innumber;
int staynumber=len-outnumber;
int Queue[]=new int[len];
int Innumber[]=new int[innumber];
int Outnumber[]=new int[outnumber];
public void queuelength() {
Scanner sc=new Scanner(System.in);
int len=sc.nextInt();
}
public void inqueue(){
for(int i=0;i<len;i++){
Scanner sc=new Scanner(System.in);
Queue[i]=sc.nextInt();
}
}
public void setOutnumber(){
System.out.print("out ");
Scanner sc=new Scanner(System.in);
outnumber=sc.nextInt();
}
public void setInnumber(){
System.out.print("in ");
Scanner sc=new Scanner(System.in);
for(int i=0;i<innumber;i++){
Innumber[i]= sc.nextInt();
}
}
public void changequeue(){
if(innumber>outnumber){len+=innumber=outnumber;}
for(int i=0;i<outnumber;i++)
Queue[i]=Queue[i+outnumber];
for(int i=staynumber;i<len;i++){
Queue[i]=Innumber[i-staynumber];
}
for(int i=0;i<outnumber;i++){
Outnumber[i]=Queue[i];
}
}
public void printqueue(){
System.out.print("len = "+len+", data =");
for(int i=0;i<len;i++){
System.out.print(" "+Queue[i]);
}
System.out.print("\n");
System.out.print("len = "+outnumber+", data =");
for(int i=0;i<=outnumber;i++){
System.out.print(" "+Outnumber[i]);
}
}
}
public class queuetest {
public static void main(String[] args) {
queue queue1 = new queue();
queue1.queuelength();
queue1.inqueue();
queue1.setOutnumber();
queue1.setInnumber();
queue1.changequeue();;
queue1.printqueue();;
}
}

import java.util.Scanner;
class Queue {
    private int[] list;
    public Queue(int len,String[] list){
        this.list = new int[len];
        for (int i=0;i<len;i++){
            this.list[i]=Integer.parseInt(list[i]);
        }
    }

    public void inQueue(int i){
        int [] temp=new int[list.length+1];
        for(int j=0;j<list.length;j++){
            temp[j]=list[j];
        }
        temp[temp.length-1]=i;
        list=new int[list.length+1];
        list=temp;
    }

    public int[] outQueue(int len,int [] outs){
        int outLen=this.list.length<len?this.list.length:len;
        int[] out = new int[outLen+outs.length];
        int i=0;
        for(;i<outs.length;i++){
            out[i]=outs[i];
        }
        for(;i<out.length;i++){
            out[i] = this.list[i];
        }
        int []temp=new int[list.length-outLen];
        for(int j=0;j<temp.length;j++){
            temp[j]=this.list[temp.length+j-1];
        }
        list=new int[list.length-outLen];
        list=temp;
        return out;
    }

    public int getLen(){
        return this.list.length;
    }

    public int [] getList(){
        return list;
    }
}

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        String line = scan.nextLine();
        int len = Integer.parseInt(line);
        Queue q = new Queue(len, scan.nextLine().split(" "));
        String line1 = scan.nextLine();
        String line2 = scan.nextLine();
        int outNum = 0;
        int[] out=new int[outNum];
        if(line1.startsWith("in")){
            String[] ss = line1.split(" ");
            for(int i=1;i<ss.length;i++){
                q.inQueue(Integer.parseInt(ss[i]));
            }
        }else if(line1.startsWith("out")){
            outNum += Integer.parseInt(line1.split(" ")[1]);
            out=q.outQueue(outNum,out);
        }
        if(line2.startsWith("in")){
            String[] ss = line2.split(" ");
            for(int i=1;i<ss.length;i++){
                q.inQueue(Integer.parseInt(ss[i]));
            }
        }else if(line2.startsWith("out")){
            outNum += Integer.parseInt(line2.split(" ")[1]);
            out=q.outQueue(outNum,out);
        }
        System.out.print("len = "+ q.getLen());
        if(q.getLen()>0){
            System.out.print(", data =");
            for(int i :q.getList()){
                System.out.print(" "+i);
            }
        }
        System.out.println();
        System.out.print("len = "+ out.length);
        if (out.length>0){
            System.out.print(", data =");
            for(int i=0;i<out.length;i++){
                System.out.print(" "+out[i]);
            }
        }
        scan.close();
    }
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632