📜  用于免费货币转换的 api - Java (1)

📅  最后修改于: 2023-12-03 14:56:19.496000             🧑  作者: Mango

用于免费货币转换的 API - Java

在开发金融应用程序时,将货币转换应用到您的程序中至关重要。在这种情况下,可以使用免费的货币转换 API。这是一个简单而可靠的 Java API,可以将一个货币转换成另一个货币。

API 的功能
  • 支持大部分国际货币的转换。
  • 可以查看历史数据并更新数据。
  • 可以拓展支持更多的货币种类。
API 的使用

首先,您需要在代码中引入这个 API。可以将以下代码放在您的 Java 类文件中的开头。

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;
import org.json.JSONObject;

使用以下代码配置您的 API 密钥:

String apiKey = "YOUR_API_KEY";

替换 YOUR_API_KEY 为您的 API 密钥。

现在,您可以使用以下代码将一个货币转换成另一个货币:

public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    System.out.println("Enter the amount: ");
    double amount = scanner.nextDouble();
    System.out.println("Enter the source currency: ");
    String sourceCurrency = scanner.next().toUpperCase();
    System.out.println("Enter the target currency: ");
    String targetCurrency = scanner.next().toUpperCase();
    double convertedAmount = convertCurrency(apiKey, sourceCurrency, targetCurrency, amount);
    System.out.println(amount + " " + sourceCurrency + " = " + convertedAmount + " " + targetCurrency);
}

public static double convertCurrency(String apiKey, String sourceCurrency, String targetCurrency, double amount) {
    try {
        URL url = new URL("http://api.currencylayer.com/live?access_key=" + apiKey + "&currencies=" + sourceCurrency + "," + targetCurrency + "&format=1");
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setRequestMethod("GET");
        BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
        String inputLine;
        StringBuffer response = new StringBuffer();
        while ((inputLine = reader.readLine()) != null) {
            response.append(inputLine);
        }
        reader.close();
        JSONObject jsonObject = new JSONObject(response.toString());
        double sourceRate = jsonObject.getJSONObject("quotes").getDouble("USD" + sourceCurrency);
        double targetRate = jsonObject.getJSONObject("quotes").getDouble("USD" + targetCurrency);
        return targetRate / sourceRate * amount;
    } catch (Exception e) {
        e.printStackTrace();
        return 0.0;
    }
}
API 的限制
  • API 仅提供免费版。如果需要更多带宽或其他功能,请查看付费版本。
  • 每个 API 密钥每个月仅限制 250 次访问。
  • 可能会出现某些特定市场无法使用 API 的情况。
总结

这个免费货币转换 API 提供了简单而可靠的方法,使用它您可以将一个货币转换成另一个货币。虽然仅提供免费版,但它可以支持大多数国际货币的转换,并可以进行历史记录查询和数据更新,为您的金融应用程序提供帮助。