import java.math.BigDecimal;
public class BigDecimalConversion {
public static void main(String[] args) {
// Convert String to BigDecimal
String strValue = "12345.6789";
BigDecimal bdFromString = new BigDecimal(strValue);
System.out.println("BigDecimal from String: " + bdFromString);
// Convert double to BigDecimal (use String constructor to avoid precision issues)
double doubleValue = 12345.6789;
BigDecimal bdFromDouble = new BigDecimal(Double.toString(doubleValue));
System.out.println("BigDecimal from double: " + bdFromDouble);
// Convert int to BigDecimal
int intValue = 1000;
BigDecimal bdFromInt = BigDecimal.valueOf(intValue);
System.out.println("BigDecimal from int: " + bdFromInt);
// Convert long to BigDecimal
long longValue = 123456789L;
BigDecimal bdFromLong = BigDecimal.valueOf(longValue);
System.out.println("BigDecimal from long: " + bdFromLong);
// Example: Basic arithmetic with BigDecimal
BigDecimal sum = bdFromString.add(bdFromInt);
System.out.println("Sum (String + int): " + sum);
BigDecimal product = bdFromDouble.multiply(bdFromLong);
System.out.println("Product (double * long): " + product);
}
}