Question: > 
> **Possible Duplicate:**  
> 
> [Is the ternary operator evil?](https://softwareengineering.stackexchange.com/questions/28314/is-the-ternary-operator-evil) 
> 
> 
> 

Does using shorthand if else statments hurt readability?

Compare:

```
string name = street != null ? street.Owner : "Not known";

```

With:

```
string name;

if(street != null)
{
    name =  street.Owner;
}
else
{
    name = "Not known";
}

```

I have become familiar enough with the shorthand that its just as readable for short statements as the long version. Is that true for most developers or should I favor the more verbose version

Answer: 
What you are referring to is a ternary operator. In my opinion it can increase readability for simplistic conditional checks like the one in your question. It's short and provides a clear and obvious pair of return values. Nesting them hurts readability. While not quite a duplicate question the "hurts" is clearly demonstrated in [THIS](https://softwareengineering.stackexchange.com/questions/28314/is-the-ternary-operator-evil) question. 

Code from that question:

```
int median(int a, int b, int c) {
    return (a<b) ? (b<c) ? b : (a<c) ? c : a : (a<c) ? a : (b<c) ? c : b;
}

```
I often hear form programmers coming from other languages than it hurts readability. But once they got used to it, it becomes natural. For programmers of other languages (e.g. Delphi) it may not translate to anything they already know, so they think it's difficult.

When you know the language, I think it actually improves readability (unless you chain this shorthand multiple times or use really complex conditions).