Problem Name: Java Currency Formatter

Problem Link:

In this HackerRank Functions in Java programming problem solution,

Given a double-precision number, payment ,denoting an amount of money, use the NumberFormat class' getCurrencyInstance method to convert payment into the US, Indian, Chinese, and French currency formats. Then print the formatted values as follows:

US: formattedPayment
India: formattedPayment
China: formattedPayment
France: formattedPayment

where formattedpayment is payment formatted according to the appropriate Locale's currency.

Note: India does not have a built-in Locale, so you must construct one where the language is en (i.e., English).

Input Format

A single double-precision number denoting payment .


  • 0 <=  payment . 10**9 

Output Format

On the first line, print US: u where u is payment formatted for US currency.

On the second line, print India: i where i payment formatted for Indian currency.

On the third line, print China: c where c is payment formatted for Chinese currency.

On the fourth line, print China: f where f is payment formatted for Chinese currency.

Sample Input


Sample Output

US: $12,324.13
India: Rs.12,324.13
China: ¥12,324.13
France: 12 324,13 €


Each line contains the value of payment formatted according to the four countries' respective currencies.






Code Examples

#1 Code Example with Java Programming

Code - Java Programming

import java.util.*;
import java.text.*;

public class Solution{
    public static void main(String[] args){
        Scanner scanner = new Scanner(;
        double payment = scanner.nextDouble();
        NumberFormat localPayment; 
        localPayment = NumberFormat.getCurrencyInstance(Locale.US);
        System.out.println("US: " + localPayment.format(payment));
        localPayment = NumberFormat.getCurrencyInstance(new Locale("en", "in"));
        System.out.println("India: " + localPayment.format(payment));
        localPayment = NumberFormat.getCurrencyInstance(Locale.CHINA);
        System.out.println("China: " + localPayment.format(payment));
        localPayment = NumberFormat.getCurrencyInstance(Locale.FRANCE);
        System.out.println("France: " + localPayment.format(payment));
Copy The Code & Try With Live Editor


[Solved] Java Date and Time in Java solution in Hackerrank - Hacerrank solution Java
[Solved] Java Strings Introduction in Java solution in Hackerrank - Hacerrank solution Java