Have a button perform a different action each time it's clicked?

I have a button that I want to perform a different action each time it’s clicked. For example, set object 1 active the first time it’s clicked, then set object two active the second time it’s clicked, etc.
My idea was to create a counter to track how many times the button has been clicked, but I don’t know how to make an if statement if the button has been clicked.

private List<System.Action> actions = new List<System.Action>();
private int clicks = 0;
void Start()
{
actions.Add( () => Debug.Log(“Hello”) );
actions.Add( Foo );
}

void Foo()
{
    // Do something
}
// Specify this function in the onClick event of the button
public void OnClick()
{
    actions[clicks].Invoke();
    clicks = (clicks + 1) % actions.Count;
}