Ruby conditional operator ? :

Hi,
in java, I can use ? : shorthand operators to ensure s is assigned to
some value.
String s = s == null ? "" : s;

Is there similar shorthand operator in Ruby?

Thanks.
Yaxm

···

--
Posted via http://www.ruby-forum.com/.

The same old ternary operator is in Ruby as in most languages these days.
  ? :
so...

conditional_statement ? true_result : false_result

···

On Apr 28, 2007, at 5:51 PM, Yaxm Yaxm wrote:

Hi,
in java, I can use ? : shorthand operators to ensure s is assigned to
some value.
String s = s == null ? "" : s;

Is there similar shorthand operator in Ruby?

Thanks.
Yaxm

-- Posted via http://www.ruby-forum.com/\.

For assigning default value ||= is usually used (for non-logic values)

i.e.
@name ||= "Joe"

doesn't work for logic values (will overwrite false)
search google for ruby idioms (e.g.
http://wiki.rubygarden.org/Ruby/page/show/RubyIdioms\)

Jano

···

On 4/28/07, John Joyce <dangerwillrobinsondanger@gmail.com> wrote:

On Apr 28, 2007, at 5:51 PM, Yaxm Yaxm wrote:

> Hi,
> in java, I can use ? : shorthand operators to ensure s is assigned to
> some value.
> String s = s == null ? "" : s;
>
> Is there similar shorthand operator in Ruby?
>
> Thanks.
> Yaxm
>
> --
> Posted via http://www.ruby-forum.com/\.
>

The same old ternary operator is in Ruby as in most languages these
days.
  ? :
so...

conditional_statement ? true_result : false_result

of course there are many ways to set default values. The Perl slogan applies to Ruby very well.

···

On Apr 28, 2007, at 6:23 PM, Jano Svitok wrote:

On 4/28/07, John Joyce <dangerwillrobinsondanger@gmail.com> wrote:

On Apr 28, 2007, at 5:51 PM, Yaxm Yaxm wrote:

> Hi,
> in java, I can use ? : shorthand operators to ensure s is assigned to
> some value.
> String s = s == null ? "" : s;
>
> Is there similar shorthand operator in Ruby?
>
> Thanks.
> Yaxm
>
> --
> Posted via http://www.ruby-forum.com/\.
>

The same old ternary operator is in Ruby as in most languages these
days.
  ? :
so...

conditional_statement ? true_result : false_result

For assigning default value ||= is usually used (for non-logic values)

i.e.
@name ||= "Joe"

doesn't work for logic values (will overwrite false)
search google for ruby idioms (e.g.
http://wiki.rubygarden.org/Ruby/page/show/RubyIdioms\)

Jano