Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

C# C# Objects Encapsulation and Arrays Ternary If

michael edmondson
michael edmondson
4,510 Points

Did you include the boolean expression to evaluate?

I know whats being asked but im not sure of the syntax of how to add it ive tried to few different ways but no luck

CodeChallenge.cs
int value = -1;
string textColor = null;

(value < 0) : textColor = "red" ? textColor = "green";

1 Answer

Steven Parker
Steven Parker
229,708 Points

A ternary expression isn't intended to control statements like an "if" might, but instead returns one of two values. Also note that the "?" symbol comes after the test, and the ":" goes between the two values.

So a typical ternary expression in an assignment might look like this:

variable = (test condition) ? (value if true) : (value if false)

Give it another try, I'll bet you can do it now.

michael edmondson
michael edmondson
4,510 Points

im still having trouble with the bool expresssion

int value = -1; string textColor = null; bool (value < 0) = true;

(value < 0) ? textColor = "red" : textColor = "green";

what am i doing wrong here?

Steven Parker
Steven Parker
229,708 Points

You still have two assignment statements inside the ternary. There should be only one assignment, and it should use the ternary to obtain the value.

The "variable" in my generic example would be "textColor" in this case.