在java中执行while while循环的问题

时间:2016-09-10 01:13:53

标签: java loops

我的do while循环出现问题,因为在输入STOP时它不会结束。此外,我不确定是否需要添加任何异常或不添加异常。我知道doString会更有效,但是在提取输出时,程序的要求是for循环。

import java.util.*;
import java.util.ArrayList;
import java.lang.IndexOutOfBoundsException;
public class MyProj
{

    public static void main(String[] args)
    {
        ArrayList <String> MyItems = new ArrayList <String>();
        Scanner Scan = new Scanner(System.in);
        String Temp;
        System.out.println("Please enter the name of an object, repeat as needed, type STOP to end");

            do
            {
                Temp = Scan.nextLine();
                if(Temp != "STOP")
                {
                MyItems.add(Temp);
                }
            }
            while(Temp == "STOP");

        for(int x = 0; x <= MyItems.size() - 1; x++)
        {
            System.out.println(MyItems.get(x));
        }



    }
}

1 个答案:

答案 0 :(得分:1)

试试这段代码:

do
{
    Temp = Scan.nextLine();
    if(!Temp.equals("STOP"))
    {
        MyItems.add(Temp);
    }
}
while(!Temp.equals("STOP"));

我建议您将其更改为@ {3kings建议的equalsIgnoreCase()