123 coins / 5 pirates
is 24 coins per pirate.
123 % 5
is 3 coins left over for the parrot.
Often in a program you want to give a name to a constant value. For example you might have a tax rate of 0.045 for durable goods and a tax rate of 0.038 for non-durable goods. These are constants, because their value is not going to change during a run of the program. It is convenient to give these constants a name. This can be done:
The reserved word final tells the compiler that the value will not change. The names of constants follow the same rules as the names for variables. (Programmers sometimes use all capital letters for constants; but that is a matter of personal style, not part of the language.)
public class CalculateTax { public static void main ( String[] arg ) { final double DURABLE = 0.045; final double NONDURABLE = 0.038; . . . . . . } }
Now the constants can be used in expressions like:
taxamount = gross * DURABLE ;
But the following is a syntax error:
// try (and fail) to change the tax rate. DURABLE = 0.441;
In your programs,
use a named constant like DURABLE
rather than using a literal like 0.045
.
There are two advantages in doing this:
Could an ordinary variable be used to give a value a name?
What is another advantage of using final
?