• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

divide by 0 exception

 
Ranch Hand
Posts: 4716
9
Scala Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
i wrote a calculator program like the windows one(well sort of). anyway i had to add a lot of if's to catch bad input that would result in a runtime exception. now i think i am down to only having the divide by 0 one left. if you can find others please let me know. anyway i cant just say if text.equals("0") because it could also be "0.0" ...hmm i could OR them hmmm..

i plan to refactor it when i shake all the bugs out im just wondering if any of you can find some more exception throwing code. or code that doesn't perform correctly.
 
Marshal
Posts: 79506
379
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I would suggest you refactor your Listener class, too. That single method is far too long. Individual Listeners associated with each button would be better. You could have a NumberListener class with 0, 1, 2 etc., as fields for the individual instances.

What about creating a BigDecimal instance from the text, testing its difference from ZERO with the compareTo method and throwing the Exception if the difference is 0?
 
Randall Twede
Ranch Hand
Posts: 4716
9
Scala Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
i like the single switch statement to handle all action events. it is thanks to java7 that i can do it so easily. i forgot to mention you need java7 to compile or run this.

i was thinking along the same lines. i was going to use Double.parseDouble() to change it to a number and then compare. if they are trying to divide by zero i will use JOptionPane to alert them.....BigDecimal and ZERO look better

i am going to add two lines of code to my original post(rather than repost it all) the case "C" block
 
These are the worst of times and these are the best of times. And this is the best tiny ad:
a bit of art, as a gift, the permaculture playing cards
https://gardener-gift.com
reply
    Bookmark Topic Watch Topic
  • New Topic