If you have a few years of experience in the Java ecosystem and you’d like to share that with the community, have a look at our **Contribution Guidelines**.

# Calculating Logarithms in Java

Last modified: March 25, 2020

## 1. Introduction

In this short tutorial, we'll learn how to calculate logarithms in Java. We'll cover both common and natural logarithms as well as logarithms with a custom base.

## 2. Logarithms

A logarithm is a mathematical formula representing the power to which we must raise a fixed number (the base) to produce a given number.

In its simplest form, it answers the question: How many times do we multiply one number to get another number?

We can define logarithm by the following equation:

exactly if## 3. Calculating Common Logarithms

Logarithms of base 10 are called common logarithms.

To calculate a common logarithm in Java we can simply use the *Math.log10()* method:

```
@Test
public void givenLog10_shouldReturnValidResults() {
assertEquals(Math.log10(100), 2);
assertEquals(Math.log10(1000), 3);
}
```

## 4. Calculating Natural Logarithms

Logarithms of the base *e *are called natural logarithms.

To calculate a natural logarithm in Java we use the *Math.log()* method:

```
@Test
public void givenLog10_shouldReturnValidResults() {
assertEquals(Math.log(Math.E), 1);
assertEquals(Math.log(10), 2.30258);
}
```

## 5. Calculating Logarithms With Custom Base

To calculate a logarithm with custom base in Java, we use the following identity:

```
@Test
public void givenCustomLog_shouldReturnValidResults() {
assertEquals(customLog(2, 256), 8);
assertEquals(customLog(10, 100), 2);
}
private static double customLog(double base, double logNumber) {
return Math.log(logNumber) / Math.log(base);
}
```

## 6. Conclusion

In this tutorial, we've learned how to calculate logarithms in Java.

As always, the source code is available over on GitHub.