2016-04-18 16 views
8

Scalaに変数のクラス名を表示する方法はありますか?Scalaの変数の印刷タイプ

fooのメソッドが異なるタイプのオブジェクトを返すことがあり、結果のクラスタイプを印刷できる場合は、偉大になる場合があります。val result = foo(a,b,c)が表示されることがあります。

+1

intellijでは 'alt' +' = ' –

+0

@Łukasz、ありがとうございました、投票を使用することができます。プログラムが動的に実行されているときに、コンソールではタイプが動的に値を実行することによって決定されるためです。 :) –

答えて

11

クイックと汚いトリック私は、多くの場合、あなたにそれを見つけ、実際の戻り値の型についての情報を提供し、エラーが発生します

val result: Nothing = foo(a,b,c) 

コンパイラを使用します。

+0

ありがとうGabriele、投票アップ。 'foo'メソッドは動的に異なるタイプの戻り値を持ち、実行時に決定するので、型を動的に出力する方法はありますか? –

+1

@LinMa、それはあなたが尋ねたものとはまったく異なる質問です:)適切な答えを与えるためにもっと包括的な例が必要です。 –

+1

本当のランタイムクラスを望むならば、単に 'result.getClass'を使用してください。 'Set(1).getClass'は' class scala.collection.immutable.Set $ Set1'を出力します。 –