gpt4 book ai didi

java - 将 For 循环与 Weather Java Web 服务结合使用

转载 作者:行者123 更新时间:2023-12-01 04:18:33 24 4
gpt4 key购买 nike

我编写了一种从 WSDL Web 服务获取天气详细信息的方法。我的代码工作正常,没有任何错误,但是有没有办法使用 For 循环/while 从用户那里获取三个城市和邮政编码?

程序应使用“for/while 循环”提示第二个、第三个和更多城市的相同信息。

我该怎么做?

这是 WSDL 文件:

`http://wsf.cdyne.com/WeatherWS/Weather.asmx?WSDL

这是我的代码:

package weather;

import com.cdyne.ws.weatherws.ArrayOfWeatherDescription;
import com.cdyne.ws.weatherws.WeatherReturn;
import java.util.Scanner;

/**
*
* @author elacy
*/
public class Weather {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
try {
String zipCode1;
String zipCode2;
String zipCode3;
Scanner keyboard = new Scanner(System.in);
String City1;
String City2;
String City3;

com.cdyne.ws.weatherws.Weather service = new com.cdyne.ws.weatherws.Weather();
com.cdyne.ws.weatherws.WeatherSoap port = service.getWeatherSoap();

\\makes this part a For loop

System.out.println ("Please enter your First city");
City1 = keyboard.nextLine().toUpperCase();
System.out.println ("Please enter your First zipcode");
zipCode1 = keyboard.nextLine();
System.out.println ("Please enter your Second city");
City2 = keyboard.nextLine().toUpperCase();
System.out.println ("Please enter your Second zipcode");
zipCode2 = keyboard.nextLine();
System.out.println ("Please enter your Third city");
City3 = keyboard.nextLine().toUpperCase();
System.out.println ("Please enter your Third zipcode");
zipCode3 = keyboard.nextLine();

System.out.println("------------------------------------------------------");
System.out.println("EVAN'S WEATHER FORECAST FOR: SUNDAY, OCTOBER 07, 2013");
System.out.println("------------------------------------------------------");
System.out.println("City Zip Code Temp Relative Humidity");

System.out.println(City1 +" "+ zipCode1 +
port.getCityWeatherByZIP(zipCode1).getTemperature() +
port.getCityWeatherByZIP(zipCode1).getRelativeHumidity());

System.out.println(City2 +" "+ zipCode2 +
port.getCityWeatherByZIP(zipCode2).getTemperature() +
port.getCityWeatherByZIP(zipCode2).getRelativeHumidity());

System.out.println(City3 +" "+ zipCode1 +
port.getCityWeatherByZIP(zipCode3).getTemperature() +
port.getCityWeatherByZIP(zipCode3).getRelativeHumidity());

} catch (Exception ex) {
}

}

private static WeatherReturn getCityWeatherByZIP(java.lang.String zip) {
com.cdyne.ws.weatherws.Weather service = new com.cdyne.ws.weatherws.Weather();
com.cdyne.ws.weatherws.WeatherSoap port = service.getWeatherSoap();
return port.getCityWeatherByZIP(zip);
}
}

最佳答案

非常简单:

String[] cities = new String[3];
String[] zipCodes = new String[3];

for (int i = 0; i < 3; i++) {
System.out.println ("Please enter your City No." + (i + 1) + ":");
cities[i] = keyboard.nextLine().toUpperCase();
System.out.println ("Please enter your Zipcode No." + (i + 1) + ":");
zipCodes[i] = keyboard.nextLine();
}

System.out.println("------------------------------------------------------");
System.out.println("EVAN'S WEATHER FORECAST FOR: SUNDAY, OCTOBER 07, 2013");
System.out.println("------------------------------------------------------");
System.out.println("City Zip Code Temp Relative Humidity");

for (int i = 0; i < 3; i++) {
System.out.println(cities[i] +" " + zipCodes[i] +
port.getCityWeatherByZIP(zipCodes[i]).getTemperature() +
port.getCityWeatherByZIP(zipCodes[i]).getRelativeHumidity());
}

关于java - 将 For 循环与 Weather Java Web 服务结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19202319/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com