Data Type
Type | Explanation |
---|---|
int | A 32-bit (4-byte) integer value |
short | A 16-bit (2-byte) integer value |
long | A 64-bit (8-byte) integer value |
byte | An 8-bit (1-byte) integer value |
float | A 32-bit (4-byte) floating-point value |
double | A 64-bit (8-byte) floating-point value |
char | A 16-bit character using the Unicode encoding scheme |
boolean | A true or false value |
Implicit and explicit casting : Primitive Type Casting
An implicit cast means you don’t have to write code for the cast
An implicit cast happens when you’re doing a widening conversion.
1 2 3 4 5 6 | public class MainClass{ public static void main(String[] argv){ int a = 100; long b = a; // Implicit cast, an int value always fits in a long } } |
An explicit casts looks like this:
1 2 3 4 5 6 | public class MainClass{ public static void main(String[] argv){ float a = 100.001f; int b = (int)a; // Explicit cast, the float could lose info } } |
Impossible Conversions
- Any primitive type to any reference type
- The null value to any primitive type
- Any primitive to boolean
- A boolean to any primitive
The Remainder or Modulus Operator in Java
Java has one important arithmetical operator you may not be familiar with, %
, also known as the modulus or remainder operator. The %
operator returns the remainder of two numbers. For instance 10 % 3
is 1 because 10 divided by 3 leaves a remainder of 1. You can use %
just as you might use any other more common operator like +
or -
.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | class Remainder { public static void main (String args[]) { int i = 10; int j = 3; System.out.println("i is " + i); System.out.println("j is " + j); int k = i % j; System.out.println("i%j is " + k); } } |
Here’s the output:
1 2 3 4 5 6 7 | <samp>% javac Remainder.java % java Remainder i is 10 j is 3 i%j is 1 </samp> |
Perhaps surprisingly the remainder operator can be used with floating point values as well. It’s surprising because you don’t normally think of real number division as producing remainders. However there are rare times when it’s useful to ask exactly how many times does 1.5 go into 5.5 and what’s left over? The answer is that 1.5 goes into 5.5 three times with one left over, and it’s that one which is the result of 5.5 % 1.5 in Java.