Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:尝试中断while循环时出错_Java - Fatal编程技术网

Java:尝试中断while循环时出错

Java:尝试中断while循环时出错,java,Java,当程序应该到达break时,我不断收到此错误: 线程“main”java.lang.IndexOutOfBoundsException中的异常异常:索引:2,大小:2 位于java.util.LinkedList.checkElementIndex(LinkedList.java:555) 位于java.util.LinkedList.get(LinkedList.java:476) 位于Glosor.main(Glosor.java:65)” 代码如下: import java.util.

当程序应该到达break时,我不断收到此错误:

线程“main”java.lang.IndexOutOfBoundsException中的异常异常:索引:2,大小:2 位于java.util.LinkedList.checkElementIndex(LinkedList.java:555) 位于java.util.LinkedList.get(LinkedList.java:476) 位于Glosor.main(Glosor.java:65)”

代码如下:

  import java.util.Arrays;
  import java.util.LinkedList;
  import java.util.List;
  import java.io.*;

  public class Glosor {
  public static void main(String[] args) throws IOException {

  List<String> gloslista1 = new LinkedList<String>(Arrays.asList());
  List<String> gloslista2 = new LinkedList<String>(Arrays.asList());

  String inputStr1 = JOptionPane.showInputDialog(null,
                                               "**********************************" + "\n\n" + 
                                               "1. Skapa glosövning" + "\n\n" + 
                                               "2. Starta glosövning" + "\n\n" +
                                               "3. Avsluta" + "\n\n" + 
                                               "**********************************");

  int input1 = Integer.parseInt(inputStr1);




     switch (input1) {

        case 1:

        String övningsnamn = JOptionPane.showInputDialog(null, "Vad heter övningen?");
        String språk1 = JOptionPane.showInputDialog(null, "Språk 1?");      
        String språk2 = JOptionPane.showInputDialog(null, "Språk 2?");

           while (true) {

           String glosa1 = JOptionPane.showInputDialog(null, "Skriv in glosa på " + språk1 + "\n\n" + 
                                                             "När du är klar skriv klar i rutan");               
              if(glosa1.equals("klar")) {
              break;
              //this is where i get the error message
              }
              else {          
              String glosa2 = JOptionPane.showInputDialog(null, "Skriv in glosa på " + språk2); 


              gloslista1.add(glosa1);
              gloslista2.add(glosa2);
              }                      

           }
              String filnamn1 = "svenskaord";
              String filnamn2 = "franskaord";

              PrintWriter utström1 = new PrintWriter
                                     (new BufferedWriter
                                     (new FileWriter(filnamn1)));
              //Skapar en text fil för glosorna på svenska

              PrintWriter utström2 = new PrintWriter
                                     (new BufferedWriter
                                     (new FileWriter(filnamn2)));
              //Skapar en text fil för glosorna på franska   

                 for(int i = 0; i<=gloslista1.size(); i++) {
                 utström1.println(gloslista1.get(i));
                 utström2.println(gloslista2.get(i));
                 //Skriver in glosor i text filerna

                 }
导入java.util.array;
导入java.util.LinkedList;
导入java.util.List;
导入java.io.*;
公共级手套{
公共静态void main(字符串[]args)引发IOException{
List gloslista1=新的LinkedList(Arrays.asList());
List glosist2=新建LinkedList(array.asList());
字符串inputStr1=JOptionPane.showInputDialog(null,
“************************************”+“\n\n”+
“1.Skapa glosövning”+“\n\n”+
“2.Starta glosövning”+“\n\n”+
“3.Avsluta”+“\n\n”+
"**********************************");
int input1=Integer.parseInt(inputStr1);
开关(输入1){
案例1:
Stringövningnamn=JOptionPane.showInputDialog(null,“Vad heterövningen?”);
字符串språk1=JOptionPane.showInputDialog(null,“språk 1?”);
字符串språk2=JOptionPane.showInputDialog(null,“språk2?”);
while(true){
字符串glosa1=JOptionPane.showInputDialog(null,“glosa på中的Skriv”+språk1+“\n\n”+
“När duär klar skriv klar i rutan”);
if(glosa1.equals(“klar”)){
打破
//这就是我得到错误信息的地方
}
否则{
字符串glosa2=JOptionPane.showInputDialog(null,“glosa på中的Skriv”+språk2);
gloslista1.添加(glosa1);
gloslista2.add(glosa2);
}                      
}
字符串filnamn1=“svenskaord”;
字符串filnamn2=“franskaord”;
PrintWriter utström1=新的PrintWriter
(新的缓冲写入程序)
(新文件编写器(filnamn1));
//斯卡帕文本文件
PrintWriter utström2=新的PrintWriter
(新的缓冲写入程序)
(新文件编写器(filnamn2));
//文本文件中的Skapar fil för glosorna påfranska
对于(int i=0;i循环应为

for(int i = 0; i<=gloslista1.size()-1; i++) 

for(inti=0;ifor循环超出了范围

for(int i = 0; i<=gloslista1.size(); i++) {
    utström1.println(gloslista1.get(i));
    utström2.println(gloslista2.get(i));
    //Skriver in glosor i text filerna

}

请提供更多代码。目前,无法重现您的错误。
for(int i = 0; i<gloslista1.size(); i++)