问答详情
源自:12-1 综合练习

在第一步骤,打算用循环语句来判断输入的数字,但不知道哪里出错了.求各位帮帮忙看一下.我的思路是:通过输入数字0或1来代表"否"和"是",①判断输入的是否是0或1,②真:继续判断是0还是1,给出具体的应答;否,重新输入.

package com.imooc;

import java.util.Scanner;


public class Initial {

    public static  int inPut1;

    

public static void main(String[] args) {

// TODO Auto-generated method stub

        

Scanner input1 = new Scanner(System.in);//获取用户输入的指令

        System.out.println("您是否想要租车? ");

        System.out.println("是,请回复1;否,请回复0");

        inPut1 = input1.nextInt();

         

            if ((inPut1 != 0 )|| (inPut1 != 1)){

            do {

           Scanner input1a = new Scanner(System.in);

           System.out.println("请输入数字1或0.1表示'是';0表示'否'.");

           inPut1= input1a.nextInt();

           //continue;

            }while ( (inPut1 != 0) ||(inPut1 != 1));

            }else{

            switch (inPut1){

           case 0:

               System.out.println("退出 答答打车 程序");

           case 1:

               System.out.println("您可租车的类型与及其价格表,如下:");

               

                 }

           

            }

            

            }

         

}

        //调用各类汽车的型号价目表


提问者:梁梁梁世豪 2016-08-20 10:21

个回答

  • ziom
    2016-08-20 16:31:45
    已采纳

    while中的条件错了,||逻辑运算符的规则是有任一条件为true,则返回true。所以你写成这样,除非这世上有一个数可以同时等于0和1才能使这个条件为false从而退出循环

  • 梁梁梁世豪
    2016-08-20 10:23:59

    补充一下. 我做过debug测试,问题是在循环语句哪里,不论我输入什么数字,都跳不出循环.主要想问一下为什么会出现这样的情况.