Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

C# C# Objects Encapsulation and Arrays Ternary If

michael edmondson
michael edmondson
3,982 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
215,372 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
3,982 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
215,372 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.