Help us understand the problem. What is going on with this article?

Kotlin REPLで実験環境を作る

Kotlinの実験環境が欲しいと思いREPL(Read-Eval-Print Loop)を探すのに少し手間取ったのでメモ
Android Studioのインストールが済んでいる前提です。また画面はAndroid Studio 3.4.1、Windows 10のものです

プロジェクトの作成

Start a new Android Studio projectを選択して、新規プロジェクトを作成

コメント 2019-06-16 165235.png

コメント 2019-06-16 164644.png

言語はKotlinを選択

コメント 2019-06-16 164747.png

サンプルクラスの作成

今回は電卓に使用予定の計算結果をきれいに表示するクラスのテストを書いた

MainActivity.kt
// 小数点以下が0の場合切り捨てて文字列で返す
class ZeroFloor {
    val dnum: Double
    constructor(arg: Double) {
        this.dnum = arg
    }
    fun conv(): String {
        var temp = this.dnum.toInt()
        if (this.dnum == temp.toDouble()) {
            return temp.toString()
        }else {
            return this.dnum.toString()
        }
    }
}

REPLの起動

Android StudioのメニューからTools -> Kotlin -> Kotlin REPLを選択

コメント 2019-06-16 160220.png

起動時REPL上にYou’re running the REPL with outdated classesというメッセージが出たがBuild module 'app' and restartを押して再ビルドとREPLの再起動をしても表示に変化がなかった。REPLを使う上で問題はなさそう

REPL上にコードを書いてCtrl+Enterで実行

import com.example.repltest.ZeroFloor
ZeroFloor(1.5).conv()
res1: kotlin.String = 1.5

無事に動いた。

また、Kotlin REPL左上のBuild and restartを押すと再ビルドと再起動を行える。

コメント 2019-06-16 172115.png

まとめ

今回は実験用にプロジェクトを作成したということでMainActivity.ktにそのまま書いてしまったが、新規にKotlin File/Classを作成すれば同じプロジェクト内で実験が行えるので便利。

以上、Kotlin REPLで実験環境の作り方のメモでした。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away