Which one of the following code is more preferable between two of them and why?

**1.**

```
std::stack<int>stk;

//Do something

if( stk.empty() == true || stk.top() < 10 )
{
    //Do something.
}

```

or

**2**

```
std::stack<int>stk;

//Do something

if( stk.empty() == true )
{
    //Do something.
}
else if( stk.top() < 10 )
{
    //Do something.
}

```