Problemas com java.text.NumberFormat

Olá Pessoal !
Tenho uma string e quero converte-la para um BigDecimal, e outra para um Double.
Segue o código

public static void main(String[] args) {
	NumberFormat f = NumberFormat.getNumberInstance(new Locale("pt", "BR"));
	
	String n = "23.66"; // Na verdade, recebo de uma fonte que me devolve uma String
	
	BigDecimal nBigD = new BigDecimal(f.format(n));
	Double nDouble = new Double(f.format(n));
}

E da a seguinte exception

Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Number
	at java.text.DecimalFormat.format(DecimalFormat.java:504)
	at java.text.Format.format(Format.java:157)

O que estou fazendo de errado ?

[code]
public static void main(String[] args) {
NumberFormat f = NumberFormat.getNumberInstance(new Locale(“pt”, “BR”));

	String n = "23.66"; // Na verdade, recebo de uma fonte que me devolve uma String

	BigDecimal nBigD = new BigDecimal(n);
	Double nDouble = new Double(n);

	System.out.println(f.format(nBigD));
	System.out.println(f.format(nDouble));
}[/code]

Vc não pode criar um BigDecimal nem Double com um número com Vírgula.
Vc deve primeiro converter para um BigDecimal / Double pra depois usar o método fotmat().

[quote=eliangela]
Vc não pode criar um BigDecimal nem Double com um número com Vírgula.
Vc deve primeiro converter para um BigDecimal / Double pra depois usar o método fotmat().[/quote]

Obrigado !
Resolveu :smiley: