Demonstration of:
- Integers
- Boolean
- Double
import java.util.Random;
import java.util.Scanner;
int guess; // initialize user guess
Random rand = new Random(); // create new random object
Scanner scan = new Scanner(System.in);
int random_integer = rand.nextInt(20); // create random number
int[] guesses = {0,0,0,0,0}; // create guesses (preset to 5 because that is how many guesses there are)
System.out.println(random_integer);
for(int i = 0; i < guesses.length; i++){
System.out.println("Guess a number");
guess = scan.nextInt();
if (guess > random_integer){
System.out.println("Your guess is higher!");
}
else if (guess < random_integer){
System.out.println("Your guess is lower");
}
else {
System.out.println("You got it! The number was " + random_integer);
guesses[i] = guess;
break;
}
guesses[i] = guess;
}
System.out.println("Calculating mean of all data...");
int mean = 0;
for (int i : guesses){
mean += i;
}
double do_mean = mean/5f;
System.out.println("Mean is " + do_mean);
9
Guess a number
Your guess is lower
Guess a number
Your guess is lower
Guess a number
You got it! The number was 9
Calculating mean of all data...
Mean is 3.799999952316284
Type Casting Examples
- Wide casting: You take a data type that has a lower bit storage amount and cast it into a higher bit storage amount
- Narrow casting: The opposite of wide casting; take a larger data type and cast it into a smaller amount.
Wide casting can be done automatically, while narrow casting must be manual.
Wide Casting
// Wide casting
int my_int = 1241;
System.out.println(my_int);
double my_doub = my_int; // widening my_int from an integer to a double (32 --> 64 bit)
System.out.println(my_doub); // Prints with a floating point numbera
1241
1241.0
Narrow Casting
double my_doub = 12.2421; // initialize a double (64 bit number)
System.out.println(my_doub); // define double with float
System.out.println((int) my_doub); // Prints with a truncated decimal (32 bit integer number)
// Manually Casting Wider:
int new_int = 12;
System.out.println((double) new_int); // Manually cast wider using double
12.2421
12
12.0