Felix
Felix

Reputation: 8495

Scala return type for tuple-functions

I want to make a scala function which returns a scala tuple.

I can do a function like this:

def foo = (1,"hello","world")

and this will work fine, but now I want to tell the compiler what I expect to be returned from the function instead of using the built in type inference (after all, I have no idea what a (1,"hello","world") is).

Upvotes: 43

Views: 50323

Answers (2)

WillD
WillD

Reputation: 875

Also, you can create a type alias if you get tired of writing (Int,String,String)

type HelloWorld = (Int,String,String)
...

def foo : HelloWorld = (1, "Hello", "World")
/// and even this is you want to make it more OOish
def bar : HelloWorld = HelloWorld(1, "Hello", "World")

Upvotes: 5

oxbow_lakes
oxbow_lakes

Reputation: 134270

def foo : (Int, String, String) = (1, "Hello", "World")

The compiler will interpret the type (Int, String, String) as a Tuple3[Int, String, String]

Upvotes: 74

Related Questions