java - 如何让我的代码运行直到我输入数字

标签 java loops if-statement for-loop while-loop

如果这是一个愚蠢的问题,我很抱歉,但我对编码相当陌生,因此对于我的作业,我得到了以下代码:

package webservice;
import webservice.Weather;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
      Scanner scan = new Scanner (System.in);
      System.out.print ("Enter the zip code : ");
      java.lang.String zipCode = scan.nextLine();
      try{  
           webservice.Weather service = new webservice.Weather();
           webservice.WeatherSoap port = service.getWeatherSoap();
           webservice.WeatherReturn result = port.getCityWeatherByZIP(zipCode);
           System.out.print(result.getCity()+ " ");
           System.out.println (result.getState());
           System.out.println("Zip code " + zipCode);
           System.out.println ("Current Temperature is " + result.getTemperature());
        }
      catch (Exception ex){
        System.out.println("Error");
        }
    }//end main
}//end class

代码运行得很好,但我必须让它循环,直到我输入邮政编码“0”。 我对编码相当陌生,我试图回顾我以前的作品以尝试合并循环,但我从未成功。在用户输入“0”作为邮政编码之前,哪个循环最有效地让代码循环?

最佳答案

只需尝试一下:

Scanner scan = new Scanner (System.in);
int zipCode;
while(scan.nextInt()!=0){
 System.out.print ("Enter the zip code : ");
 zipCode = scan.nextInt();
}

使用 while 循环验证您的条件并使用.nextInt()从扫描器获取 int em>.

还有一个拼写错误:

如果您使用:

import webservice.Weather;

您不必这样做:

webservice.Weather service = new webservice.Weather();

很简单:

Weather service = new Weather();

看看Using Package Members 了解更多信息。

关于java - 如何让我的代码运行直到我输入数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27292459/

相关文章:

Java 名称隐藏 : The Hard Way

java - Android 等距棋盘

Windows 批处理 For 循环在一台服务器上不工作,在其他服务器上工作

loops - 创建循环以打开和导出报告

mysql - SELECT * FROM MULTIPLE+DYNAMIC 表名

java - Toast 不起作用,不明白为什么不起作用

java - database.models.Employee 不是在此服务器上注册的实体 Bean?

Java 邮件和数据库连接发生冲突

if-statement - 使用接口(interface)时检查变量类型是否为零

postgresql - Postgresql中的IF语句