1. Overview
In this tutorial, We'll learn how to write a java program to fizzbuzz solution in java language.
This is a fun game mostly played in elementary schools with your friends in schools.
FizzBuzz game rules:
This is a multiplayer game. When your turn comes then you have to say one number. If the number is multiple of 5 then you have to say "Fizz" in the french ascent. If the number is multiple of 7 then say "Buzz". If the number is multiple of 5 and 7 then say "FizzBuzz". If you can not say the right word for your number then you are out of the game. So must have to say the correct fizz buzzword to continue the game otherwise game will be continued without you. Whoever is alone in the game that person is the winner.
Let us implement the Fizz Buzz game in java language with the simple if-else conditions.
2. Java FizzBuzz Solution Using If else
The below logic is implemented using simple while loop and if-else conditions.
package com.javaprogramto.programs.fizzbuzz; /** * Java program to implement fizz buzz solution * @author javaprogramto.com * */ public class FizzBuzzExample { public static void main(String[] args) { // limit the fizz buzz game int limit = 100; // staring number int currentNumber = 1; // running the while loop till it reaches the max limit while (currentNumber <= limit) { // checking for fizzbuzz if (currentNumber % 5 == 0 && currentNumber % 7 == 0) { System.out.println("FizzBuzz"); // checking for fizz } else if (currentNumber % 5 == 0) { System.out.println("Fizz"); // checking for buzz } else if (currentNumber % 7 == 0 ) { System.out.println("Buzz"); } else { System.out.println(currentNumber); } // incrementing the number by 1 currentNumber++; } } }
Output:
1 2 3 4 Fizz 6 Buzz 8 9 Fizz 11 12 13 Buzz Fizz 16 17 18 19 Fizz Buzz 22 23 24 Fizz 26 27 Buzz 29 Fizz 31 32 33 34 FizzBuzz 36 37 38 39 Fizz 41 Buzz 43 44 Fizz 46 47 48 Buzz Fizz 51 52 53 54 Fizz Buzz 57 58 59 Fizz 61 62 Buzz 64 Fizz 66 67 68 69 FizzBuzz 71 72 73 74 Fizz 76 Buzz 78 79 Fizz 81 82 83 Buzz Fizz 86 87 88 89 Fizz Buzz 92 93 94 Fizz 96 97 Buzz 99 Fizz
3. FizzBuzz Solution in Java 8
We can implement the solution for FizzBuzz using java 8 stream API as below.
In the below example, we have used the ternary operator for condition evaluation.
IntStream.range() is to generate the numbers from 1 to 100
mapToObj(): uses the ternary operator and gets the right word.
forEach(): To iterate over the stream and print the values to console.
public class FizzBuzzExampleJava8 { public static void main(String[] args) { // limit the fizz buzz game int limit = 100; // staring number int currentNumber = 1; // IntStream to generate the numbers range from 1 to 100 and mapToObj() to get the right fizz buzz word. IntStream.rangeClosed(currentNumber, limit) .mapToObj(i -> i % 5 == 0 ? (i % 7 == 0 ? "FizzBuzz" : "Fizz") : (i % 7 == 0 ? "Buzz" : i)) .forEach(System.out::println); } }
This program also produces the same output as in the above section.
4. Conclusion
In this article, we have seen how to implement the solution to the FizzBuzz problem using java before and after java 8 concepts.
No comments:
Post a Comment
Please do not add any spam links in the comments section.