Java Number Cruncher: The Java Programmer's Guide to Numerical Computing

Author: Ronald Mak, Ron Mak
List Price: $54.99
Our Price: Click to see the latest and low price
ISBN: 0130460419
Publisher: Prentice Hall PTR (29 October, 2002)
Edition: Paperback
Sales Rank: 389,156
Average Customer Rating: 4.83 out of 5

Buy now directly from Amazon.com - Purchase this book, safely and securely from the largest book dealer on the Internet, Amazon.com

Customer Reviews

Rating: 5 out of 5
Educational, interesting, and fun
At one time or another, most of us will likely have to write code performing some amount of numerical computation beyond simple integer arithmetic. As many of us are neither mathematicians nor intimately familiar with the bit gymnastics our machines must perform in order to manipulate numbers, we can get ourselves into trouble if we're not careful. Luckily, "Java Number Cruncher" comes to the rescue.

This book is an introduction to numerical computing using Java providing "non-theoretical explanations of practical numerical algorithms." While this sounds like heady stuff, freshman level calculus should be sufficient to get the most out of this text.

The first three chapters are amazingly useful, and worth the price of admission alone. Mak does a fine job explaining in simple terms the pitfalls of even routine integer and floating-point calculations, and how to mitigate these problems. Along the way the reader learns the details of how Java represents numbers and why good math goes bad. The remainder of the book covers iterative computations, matrix operations, and several "fun" topics, including fractals and random number generation.

The author conveys his excitement for the subject in an easy-to-read, easy-to-understand manner. Examples in Java clearly demonstrate the topics covered. Some may not like that the complete source is in-line with the text, but this is subjective. Overall, I found this book educational, interesting, and quite enjoyable to read.


Rating: 5 out of 5
practical numerical algorithms for java programmers
Numerical computing in JAVA is an often-overlooked topic. So when this book came out, I couldn't wait to find out what it offers.

The first part of the book covers the pitfalls of doing numerical computing in JAVA. Do you know how many numeric data types JAVA have and what are the differences among them? Do you know which JAVA type, float or double, is more precise and which one should be used in your computation? Do you know what is a roundoff error and what operations could lead to such an error? Do you know how JAVA handles integer overflow, whether an overflow exception will be thrown? If there is a "No" to the above questions, you will benefit from reading the first part. The book starts to talk about computational algorithms in second part. The algorithms are between high school and college level. Although I didn't learn mathematics in English and haven't touched it for many years, I was able to understand most of them without much difficulty. The author does a great job in explaining mathematical theories in a clear and non-theoretical way. The graphical illustration helped me a lot at the same time. I also liked the style that all the source codes are presented in the book. Without having to sit in front of a computer, I can relax in a sofa, browse the codes, learn the implementations and highlight whatever inspired me. I had some trouble following part III, matrix, but still got excited when finding that 3-D animation could be done by matrix operations. The funs come back in the last part. The BigDecimal and BigInteger classes get introduced there and I was impressed by the extensive functionality JAVA delivers.

All in all, this book lives up to its title. Without the requirements of a strong methematical background, you'll find this book very informative and educational and essentially broaden your JAVA and programming skills. I realize more and more applications start to use JAVA for numerical programming, especially in the academic society where the web and rich GUI features of JAVA can bring better learning experience to students. One of my personal interests is to see some comparisons between JAVA and other languages in the aspects of numerical computing.


Rating: 5 out of 5
practical numerical algorithms for all Java programers
Numerical computing in JAVA is an often-overlooked topic. So when this book came out, I couldn't wait to find out what it offers.

The first part of the book covers the pitfalls of doing numerical computing in JAVA. Do you know how many numeric data types JAVA have and what are the differences among them? Do you know which JAVA type, float or double, is more precise and which one should be used in your computation? Do you know what is a roundoff error and what operations could lead to such an error? Do you know how JAVA handles integer overflow, whether an overflow exception will be thrown? If there is a "No" to the above questions, you will benefit from reading the first part. The book starts to talk about computational algorithms in second part. The algorithms are between high school and college level. Although I didn't learn mathematics in English and haven't touched it for many years, I was able to understand most of them without much difficulty. The author does a great job in explaining mathematical theories in a clear and non-theoretical way. The graphical illustration helped me a lot at the same time. I also liked the style that all the source codes are presented in the book. Without having to sit in front of a computer, I can relax in a sofa, browse the codes, learn the implementations and highlight whatever inspired me. I had some trouble following part III, matrix, but still got excited when finding that 3-D animation could be done by matrix operations. The funs come back in the last part. The BigDecimal and BigInteger classes get introduced there and I was impressed by the extensive functionality JAVA delivers.

All in all, this book lives up to its title. Without the requirements of a strong methematical background, you'll find this book very informative and educational and essentially broaden your JAVA and programming skills. I realize more and more applications start to use JAVA for numerical programming, especially in the academic society where the web and rich GUI features of JAVA can bring better learning experience to students. One of my personal interests is to see some comparisons between JAVA and other languages in the aspects of numerical computing.

Similar Products

· Facts and Fallacies of Software Engineering
· Object-Oriented Implementation of Numerical Methods: An Introduction with Java & Smalltalk
· The Java Developer's Guide to Eclipse
· Applied Evolutionary Algorithms in Java

Return To Main Computer Book IndexSearch Our Entire Computer Book Catalog