Quantcast

Syntax question using (identifier 1, identifier 2) on LHS of =

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Syntax question using (identifier 1, identifier 2) on LHS of =

Les Hartzman
Hi,

I just saw a reference to using the above syntax, specifically as follows:

   def (string1, string2) = "part1-part2".tokenize("-")

This assigns string1 "part1" and string2 "part2".

So my main question is what is this referred to as?

You can't do:

   String (string1, string2) =  "part1-part2".tokenize("-")

I did find out that you can do:

   String string1
   String string2
   (string1, string2) =  "part1-part2".tokenize("-")

Thanks.

Les

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Syntax question using (identifier 1, identifier 2) on LHS of =

Dinko Srkoč
On 27 January 2017 at 19:15, Les Hartzman <[hidden email]> wrote:
> Hi,
>
> I just saw a reference to using the above syntax, specifically as follows:
>
>    def (string1, string2) = "part1-part2".tokenize("-")
>
> This assigns string1 "part1" and string2 "part2".
>
> So my main question is what is this referred to as?

It's called multiple assignment.

>
> You can't do:
>
>    String (string1, string2) =  "part1-part2".tokenize("-")

Well, you couldn't. What if types were different?

But you could do it like this:

  def (String string1, String string2) = "part1-part2".tokenize("-")

More on multiple assignments here:
http://groovy-lang.org/semantics.html#_multiple_assignment

Cheers,
Dinko

>
> I did find out that you can do:
>
>    String string1
>    String string2
>    (string1, string2) =  "part1-part2".tokenize("-")
>
> Thanks.
>
> Les
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Syntax question using (identifier 1, identifier 2) on LHS of =

Guillaume Laforge
Administrator
I wouldn't use the def:

(String string1, String string2) = "part1-part2".tokenize("-")

(the def is redundant there)

On Fri, Jan 27, 2017 at 7:55 PM, Dinko Srkoč <[hidden email]> wrote:
On 27 January 2017 at 19:15, Les Hartzman <[hidden email]> wrote:
> Hi,
>
> I just saw a reference to using the above syntax, specifically as follows:
>
>    def (string1, string2) = "part1-part2".tokenize("-")
>
> This assigns string1 "part1" and string2 "part2".
>
> So my main question is what is this referred to as?

It's called multiple assignment.

>
> You can't do:
>
>    String (string1, string2) =  "part1-part2".tokenize("-")

Well, you couldn't. What if types were different?

But you could do it like this:

  def (String string1, String string2) = "part1-part2".tokenize("-")

More on multiple assignments here:
http://groovy-lang.org/semantics.html#_multiple_assignment

Cheers,
Dinko

>
> I did find out that you can do:
>
>    String string1
>    String string2
>    (string1, string2) =  "part1-part2".tokenize("-")
>
> Thanks.
>
> Les
>



--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Syntax question using (identifier 1, identifier 2) on LHS of =

Guillaume Laforge
Administrator
Actually, scratch that, the def is required.
Somehow, I feel that it could be made optional, and that would be more elegant :-)

On Fri, Jan 27, 2017 at 8:13 PM, Guillaume Laforge <[hidden email]> wrote:
I wouldn't use the def:

(String string1, String string2) = "part1-part2".tokenize("-")

(the def is redundant there)

On Fri, Jan 27, 2017 at 7:55 PM, Dinko Srkoč <[hidden email]> wrote:
On 27 January 2017 at 19:15, Les Hartzman <[hidden email]> wrote:
> Hi,
>
> I just saw a reference to using the above syntax, specifically as follows:
>
>    def (string1, string2) = "part1-part2".tokenize("-")
>
> This assigns string1 "part1" and string2 "part2".
>
> So my main question is what is this referred to as?

It's called multiple assignment.

>
> You can't do:
>
>    String (string1, string2) =  "part1-part2".tokenize("-")

Well, you couldn't. What if types were different?

But you could do it like this:

  def (String string1, String string2) = "part1-part2".tokenize("-")

More on multiple assignments here:
http://groovy-lang.org/semantics.html#_multiple_assignment

Cheers,
Dinko

>
> I did find out that you can do:
>
>    String string1
>    String string2
>    (string1, string2) =  "part1-part2".tokenize("-")
>
> Thanks.
>
> Les
>



--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform




--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Syntax question using (identifier 1, identifier 2) on LHS of =

Les Hartzman
Are you saying it needs to be:

   def (String string1, String string2) = "part1-part2".tokenize("-")

?

Thanks for the link on multiple assignments.


On Fri, Jan 27, 2017 at 11:15 AM, Guillaume Laforge <[hidden email]> wrote:
Actually, scratch that, the def is required.
Somehow, I feel that it could be made optional, and that would be more elegant :-)

On Fri, Jan 27, 2017 at 8:13 PM, Guillaume Laforge <[hidden email]> wrote:
I wouldn't use the def:

(String string1, String string2) = "part1-part2".tokenize("-")

(the def is redundant there)

On Fri, Jan 27, 2017 at 7:55 PM, Dinko Srkoč <[hidden email]> wrote:
On 27 January 2017 at 19:15, Les Hartzman <[hidden email]> wrote:
> Hi,
>
> I just saw a reference to using the above syntax, specifically as follows:
>
>    def (string1, string2) = "part1-part2".tokenize("-")
>
> This assigns string1 "part1" and string2 "part2".
>
> So my main question is what is this referred to as?

It's called multiple assignment.

>
> You can't do:
>
>    String (string1, string2) =  "part1-part2".tokenize("-")

Well, you couldn't. What if types were different?

But you could do it like this:

  def (String string1, String string2) = "part1-part2".tokenize("-")

More on multiple assignments here:
http://groovy-lang.org/semantics.html#_multiple_assignment

Cheers,
Dinko

>
> I did find out that you can do:
>
>    String string1
>    String string2
>    (string1, string2) =  "part1-part2".tokenize("-")
>
> Thanks.
>
> Les
>



--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform




--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Syntax question using (identifier 1, identifier 2) on LHS of =

Guillaume Laforge
Administrator
Well, here, it's not only an assignment but a declaration, and for declaration, yes, you have to use def unfortunately.

On Fri, Jan 27, 2017 at 8:37 PM, Les Hartzman <[hidden email]> wrote:
Are you saying it needs to be:

   def (String string1, String string2) = "part1-part2".tokenize("-")

?

Thanks for the link on multiple assignments.


On Fri, Jan 27, 2017 at 11:15 AM, Guillaume Laforge <[hidden email]> wrote:
Actually, scratch that, the def is required.
Somehow, I feel that it could be made optional, and that would be more elegant :-)

On Fri, Jan 27, 2017 at 8:13 PM, Guillaume Laforge <[hidden email]> wrote:
I wouldn't use the def:

(String string1, String string2) = "part1-part2".tokenize("-")

(the def is redundant there)

On Fri, Jan 27, 2017 at 7:55 PM, Dinko Srkoč <[hidden email]> wrote:
On 27 January 2017 at 19:15, Les Hartzman <[hidden email]> wrote:
> Hi,
>
> I just saw a reference to using the above syntax, specifically as follows:
>
>    def (string1, string2) = "part1-part2".tokenize("-")
>
> This assigns string1 "part1" and string2 "part2".
>
> So my main question is what is this referred to as?

It's called multiple assignment.

>
> You can't do:
>
>    String (string1, string2) =  "part1-part2".tokenize("-")

Well, you couldn't. What if types were different?

But you could do it like this:

  def (String string1, String string2) = "part1-part2".tokenize("-")

More on multiple assignments here:
http://groovy-lang.org/semantics.html#_multiple_assignment

Cheers,
Dinko

>
> I did find out that you can do:
>
>    String string1
>    String string2
>    (string1, string2) =  "part1-part2".tokenize("-")
>
> Thanks.
>
> Les
>



--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform




--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform





--
Guillaume Laforge
Apache Groovy committer & PMC Vice-President
Developer Advocate @ Google Cloud Platform

Loading...