Comparar variáveis

Oi pessoal,

Como faço para comparar uma variável do tipo decimal format com uma do tipo inteiro??

DecimalFormat não é só uma classe pra formatação? :roll:

Tenho uma variável valor do tipo string que recebe dados de um jtextfield, que assume valores do decimal format. Quando tento comparar a variavel valor com uma outra esta acontecendo o seguinte erro:

Comparação:

if(Integer.parseInt(valor) > Integer.parseInt(saldo ))

Erro:

Saldo:10.000,00
java.lang.NumberFormatException: For input string: "12.255,36 "
	at java.lang.NumberFormatException.forInputString(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at java.lang.Integer.parseInt(Unknown Source)
	at servicos.ServEmissaoEmpenho.Cadastrar(ServEmissaoEmpenho.java:122)
	at negocios.EmissaoEmpenho.CadastrarEmissaoEmpenho(EmissaoEmpenho.java:89)
	at interfaces.GuiEmissaoEmpenhos$4.actionPerformed(GuiEmissaoEmpenhos.java:399)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)

Voce tem alguma idéia do que está acontecendo?

claro q vai dar erro, tu nao pode passar algo assim pra inteiro… com essa formatação… com ponto e virgula… tu tem q fazer algum método utilitário pra vc q retire isso da string, pra depois passar pra int :joia:

Cara,
Passa pra float ou double e depois pra int.

Falow!

[quote=“clv”]Cara,
Passa pra float ou double e depois pra int.

Falow![/quote]
tb não vai funcionar pq ele tem uma virgula ali no meio :roll:

java.lang.NumberFormatException: For input string: "12.255,36 "

Existe outro formato para comportar este número! ou vou ter que tirar
os pontos e as virgulas??

[quote=“fsf”]Existe outro formato para comportar este número! ou vou ter que tirar
os pontos e as virgulas??[/quote]

os pontos e vírgulas estão ali pra apresentação, somente pra uma melhor visualização pelo usuário… ou tu tira essa formatação na String pra efetivamente fazer disso algo q represente um número pra Java e fazer operações, ou coloque a mesma formatação em algo q represente um número pra Java e faça sua comparação com equals() … :roll: :roll: :roll:

ps: é claro q vc vai preferir trabalhar com dados numéricos né!?

Tente olhar esse tópico que pode lhe ajudar:


http://www.portaljava.com.br/home/modules.php?name=Forums&file=viewtopic&t=19901&sid=9a32e825dbc4e81991510d5b714d4d8d

Valeu galera!!

Como tinha que fazer uma subtração entre as variáveis,retirei as virgulas!! apos o resultado da subtração coloco no lugar novamente!!