The Fibonacci series is a series where the next term is the sum of the previous two terms. The first two terms of the Fibonacci sequence are 0 followed by 1.

The Fibonacci sequence: 0, 1, 1, 2, 3, 5, 8, 13, 21, ...

## Example 1: Display Fibonacci series using for loop

```
public class Fibonacci {
public static void main(String[] args) {
int n = 10, t1 = 0, t2 = 1;
System.out.print("First " + n + " terms: ");
for (int i = 1; i <= n; ++i)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
}
}
}
```

**Output**

0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 +

In the above program, first (`t1`) and second (`t2`) terms are initialized to the first two terms of the Fibonacci series 0 and 1 respectively.

Then, for loop iterates to `n` (number of terms) displaying the sum of the previous two terms stored in variable `t1`.

You can also generate Fibonacci series using a while loop in Java.

## Example 2: Display Fibonacci series using while loop

```
public class Fibonacci {
public static void main(String[] args) {
int i = 1, n = 10, t1 = 0, t2 = 1;
System.out.print("First " + n + " terms: ");
while (i <= n)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
i++;
}
}
}
```

The output is the same as the above program.

In the above program, unlike a for loop, we have to increment the value of `i` inside the body of the loop.

Though both programs are technically correct, it is better to use for loop in this case. It's because the number of iteration (from 1 to `n`) is known.

## Example 3: Display Fibonacci series up to a given number (instead of terms)

```
public class Fibonacci {
public static void main(String[] args) {
int n = 100, t1 = 0, t2 = 1;
System.out.print("Upto " + n + ": ");
while (t1 <= n)
{
System.out.print(t1 + " + ");
int sum = t1 + t2;
t1 = t2;
t2 = sum;
}
}
}
```

**Output**

Upto 100: 0 + 1 + 1 + 2 + 3 + 5 + 8 + 13 + 21 + 34 + 55 + 89 +

Instead of displaying the series up to a specific number, this program displays it until a given number (100).

For this, we just need to compare the sum of the last two numbers (`t1`) with `n`.

If `t1` is less than or equals to `n`, print `t1`. Else, we're finished displaying all terms.