2017-05-18 40 views
2

から値を取得します。KotlinはkotlinのREPLでJSON

>>> import java.io.StringReader 
>>> val json = p.parse(StringReader("""{"abc":"123"}""")) as JsonObject 
>>> json.string("abc") 
error: unresolved reference: string 
json.string("abc") 
    ^

>>> json 
JsonObject(map={abc=123}) 

は、エラーの未解決の参照を取得します。ここでは例のなし:https://github.com/cbeust/klaxon仕事

答えて

3
あなたはそれが extension functionであることから、同様 string functionをインポートする必要が

、およびデフォルトでその受信機タイプParserと一緒にis not imported

import com.beust.klaxon.string 
json.string("abc") 
+0

だろうどのようなベストプラクティス?あなたが使いたいものをすべてインポートするだけですか? –

+0

同じパッケージから多くの関数が必要な場合は、 'import com.example。*'の代わりにパッケージ全体をインポートすることができます。しかし、これは解決と名前空間の汚染を招く可能性があるので、いくつかの機能が必要な大きなパッケージではこれを行うことをお勧めしません。それ以外は、それはあなた次第です。 AFAIR、IntelliJの通常のソース(スクリプト以外)のデフォルトの動作は、数が4のような値に達すると、別のインポートをパッケージ1に置き換えることです。 – hotkey