- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Format currency with Java MessageFormat
To format message with currency fillers in Java, we use the MessageFormat class. The MessageFormat class gives us a way to produce concatenated messages which are not dependent on the language. The MessageFormat class extends the Serializable and Cloneable interfaces.
Declaration −The java.text.MessageFormat class is declared as follows −
public class MessageFormat extends Format
The MessageFormat.format(pattern, params) method formats the message and fills in the missing parts using the objects in the params array matching up the argument numbers and the array indices.
The format method has two arguments, a pattern and an array of arguments. The pattern contains placeholder in {} curly braces which have a index that indicate the position in the array where the value of the argument is stored, a number argument indicating that the filler is a number and a currency parameter indicating that the number is a currency representing money. They are as follows −
MessageFormat.format("{0,number,currency} loss and {1,number,currency} profit", obj);
Let us see a program to format the message with currency fillers −
Example
import java.text.MessageFormat; public class Example { public static void main(String[] args) throws Exception { Object[] obj = new Object[] { new Float(23.21), new Float(56.86) }; String str = MessageFormat.format("{0,number,currency} loss and {1,number,currency} profit", obj); System.out.println(str); } }
Output
$23.21 loss and $56.86 profit
The currency parameter in the placeholder adds an extra dollar sign to denote currency −
String str = MessageFormat.format("{0,number,currency} loss and {1,number,currency} profit", obj);
It will give the subsequent output −
$23.21 loss and $56.86 profit
- Related Articles
- Format floating point with Java MessageFormat
- Format percentage with MessageFormat class in Java
- Long style format for Date with Java MessageFormat class
- Short Length format for Date with Java MessageFormat class
- Medium length style format for Date with Java MessageFormat class
- C# Currency ("C") Format Specifier
- Display USD currency records with the correct format in MySQL
- What should I do? Select int as currency or convert int to currency format in MySql?
- How can I format numbers as dollars currency string in JavaScript?
- Format date with DateFormat.MEDIUM in Java
- Format date with DateFormat.LONG in Java
- Format Output with Formatter in Java
- Format Calendar with String.format() in Java
- Format date with DateFormat.SHORT in Java
- Format time with DateFormat.SHORT in Java
