This community-built FAQ covers the “FizzBuzz” code challenge in Java. You can find that challenge here, or pick any challenge you like from our list.
Top Discussions on the Java challenge FizzBuzz
There are currently no frequently asked questions or top answers associated with this challenge – that’s where you come in! You can contribute to this section by offering your own questions, answers, or clarifications on this challenge. Ask a question or post a solution by clicking reply () below.
If you’ve had an “aha” moment about the concepts, formatting, syntax, or anything else with this challenge, consider sharing those insights! Teaching others and answering their questions is one of the best ways to learn and stay sharp.
Join the Discussion. Help a fellow learner on their journey.
Ask or answer a question about this exercise by clicking reply () below!
You can also find further discussion and get answers to your questions over in #get-help.
Agree with a comment or answer? Like () to up-vote the contribution!
I struggled a bit before I realised that the order do matter in regards to “FizzBuzz”
public static ArrayList fizzbuzz(int n)
{
ArrayList<Object> fizzBuzz = new ArrayList<Object>();
// Looping from 1 -> n
for (int i = 1; i <= n; i++) {
// It's important to check FizzBuzz first else you only get buzz or fizz added to the ArrayList. The order matters!
if (((i % 3) == 0) && ((i % 5) == 0)) {
fizzBuzz.add("FizzBuzz");
} else if ((i % 5) == 0) {
fizzBuzz.add("Buzz");
} else if ((i % 3) == 0) {
fizzBuzz.add("Fizz");
} else {
fizzBuzz.add(i);
}
}
return fizzBuzz;
}
I am a bit confused by this challenge because my teacher used to say that it is not really a good idea to use an ArrayList for example with Object type. Normally we should specify the data type, in this case for example I wanted to use String at first, since Integers can also be converted to String easily, but after seeing the tests fail, I changed my code.
import java.util.*;
import java.util.ArrayList;
public class FizzBuzz {
public static void main(String args) {
System.out.println(fizzbuzz(16));
}
public static ArrayList fizzbuzz(int n)
{
ArrayList numbers = new ArrayList<>();
for (int i = 1; i <= n; i++) {
boolean isDivisibleByFive=i%5==0;
boolean isDivisibleByThree=i%3==0;
I read that is not a good practice to use the Object type, so i used the String type for the ArrayList and converted the i variable into string before adding it to the ArrayList.
import java.util.*;
public class FizzBuzz {
public static void main(String[] args) {
System.out.println(fizzbuzz(16));
}
public static ArrayList fizzbuzz(int n)
{
// Write your code here
// declaring a new ArrayList, in which we will store the FizzBuzz game
ArrayList<String> fizzBuzz = new ArrayList<String>();
// using a for loop, in which we check if a number is multiple of 3, 5, both or neither
for (int i = 1; i <= n; i++){
if (i % 3 == 0 && i % 5 == 0) {
fizzBuzz.add("FizzBuzz");
} else if (i % 3 == 0) {
fizzBuzz.add("Fizz");
} else if (i % 5 == 0){
fizzBuzz.add("Buzz");
} else {
// converting int value i in a string and storing it in the ArrayList
String conv = String.valueOf(i);
fizzBuzz.add(conv);
}
}
return fizzBuzz;
}
}
I don’t think the order necessarily matters, at least mine works without checking for the FizzBuzz condition first. It just requires additional logic for each check:
public class FizzBuzz {
public static void main(String[] args) {
System.out.println(fizzbuzz(16));
}
public static ArrayList fizzbuzz(int n) {
ArrayList list = new ArrayList(n);
for (int i = 1; i <= n; i++) {
if ((i%3 == 0) && (i%5 != 0)) {
list.add("Fizz");
}
else if ((i%3 != 0) && (i%5 == 0)) {
list.add("Buzz");
}
else if ((i%3 ==0) && (i%5 == 0)) {
list.add("FizzBuzz");
}
else {
list.add(i);
}
}
return list;
}
}
I didn’t know I could use module for this challengue
import java.util.*;
public class FizzBuzz {
public static void main(String[] args) {
System.out.println(fizzbuzz(16));
}
public static ArrayList fizzbuzz(int n)
{
ArrayList Fizz = new ArrayList(n);
for (int k = 1; k <= n; k++) {
if (multiplo(k, n, 5) && multiplo(k, n, 3)){
Fizz.add("FizzBuzz");
} else if (multiplo(k, n, 5)) {
Fizz.add("Buzz");
} else if (multiplo(k, n, 3)) {
Fizz.add("Fizz");
} else {
Fizz.add(k);
}
}
return Fizz;
}
public static Boolean multiplo(int counter, int limit, int multiplier){
for (int i = 1; i <= limit; i++) {
int filter = multiplier * i;
if(counter == filter){
return true;
}
}
return false;
}
}