# Max

> Returns the largest of two or more values. When comparing negative values, values closer to zero are considered larger.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.0/script-reference/unityengine.md)
* **Assembly:** UnityEngine.CoreModule

## Max(float, float)

Returns the largest of two or more values. When comparing negative values, values closer to zero are considered larger.

```csharp
public static float Max(float a, float b)
```

### Parameters

**** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)): **** (\[float]\(https\://learn.microsoft.com/dotnet/api/system.single)):&#x20;

### Returns

| Type                                                          | Description |
| ------------------------------------------------------------- | ----------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) |             |

### Examples

```csharp
using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        // Prints Infinity
        Debug.Log(Mathf.Max(0, Mathf.Infinity));
        // Prints 0
        Debug.Log(Mathf.Max(0, -Mathf.Infinity));
        // Prints Infinity
        Debug.Log(Mathf.Max(-Mathf.Infinity, Mathf.Infinity));
        // Prints 10
        Debug.Log(Mathf.Max(0, 1, 5, -1, 8, 10));
    }
}
```

## Max(float\[])

Returns the largest of two or more values. When comparing negative values, values closer to zero are considered larger.

```csharp
public static float Max(params float[] values)
```

### Parameters

**** (\[float\[]]\(https\://learn.microsoft.com/dotnet/api/system.single)):&#x20;

### Returns

| Type                                                          | Description |
| ------------------------------------------------------------- | ----------- |
| [float](https://learn.microsoft.com/dotnet/api/system.single) |             |

### Examples

```csharp
using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        // Prints Infinity
        Debug.Log(Mathf.Max(0, Mathf.Infinity));
        // Prints 0
        Debug.Log(Mathf.Max(0, -Mathf.Infinity));
        // Prints Infinity
        Debug.Log(Mathf.Max(-Mathf.Infinity, Mathf.Infinity));
        // Prints 10
        Debug.Log(Mathf.Max(0, 1, 5, -1, 8, 10));
    }
}
```

## Max(int, int)

Returns the largest value. When comparing negative values, values closer to zero are considered larger.

```csharp
public static int Max(int a, int b)
```

### Parameters

**** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)): **** (\[int]\(https\://learn.microsoft.com/dotnet/api/system.int32)):&#x20;

### Returns

| Type                                                       | Description |
| ---------------------------------------------------------- | ----------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) |             |

### Examples

```csharp
using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        // prints 2
        Debug.Log(Mathf.Max(1, 2));

        // prints -1.2
        Debug.Log(Mathf.Max(-5.6f, -1.2f));
    }
}
```

## Max(int\[])

Returns the largest value. When comparing negative values, values closer to zero are considered larger.

```csharp
public static int Max(params int[] values)
```

### Parameters

**** (\[int\[]]\(https\://learn.microsoft.com/dotnet/api/system.int32)):&#x20;

### Returns

| Type                                                       | Description |
| ---------------------------------------------------------- | ----------- |
| [int](https://learn.microsoft.com/dotnet/api/system.int32) |             |

### Examples

```csharp
using UnityEngine;

public class ScriptExample : MonoBehaviour
{
    void Start()
    {
        // prints 2
        Debug.Log(Mathf.Max(1, 2));

        // prints -1.2
        Debug.Log(Mathf.Max(-5.6f, -1.2f));
    }
}
```
