2017-06-01 11 views
-1

私はScalaの新機能ですので、これはほとんどの人には明らかですが、ここでは私の問題です。私はバーガートラックのチケットを作成するために、単純なクラスを作成しました:私はここで達成しようとしている何インスタンス変数の値へのアクセスscala

class Tickets() { 
    var burgerPrice = 2.00 
    var frenchFriesPrice = 1.00 
    var milkshakePrice = 3.00 
    var taxes = 0.08 

    def calculatePrices(burgersNum: Int, frenchFriesNum: Int, milkshakesNum: Int) = { 

    val price = (burgersNum*burgerPrice + frenchFriesNum*frenchFriesPrice + milkshakesNum*milkshakePrice) * (1+taxes) 

    price 
    } 
    } 

は、印刷小計と、すべての領収書の合計金額になりましオブジェクトの内部関数を作成することです。そのようなことを行うには、私が試してみました:

object receipt{ 
    def main(args: Array[String]) { 
    val importe = new Tickets() 

    val burgersNum = readLine("Welcome to my shop. How many burgers do you want? ").toInt 
    val frenchFriesNum = readLine("How many French fries? ").toInt 
    val milkshakesNum = readLine("Any milkshakes? ").toInt 

    println("Burgers: " + burgersNum + "Price: " + Tickets.burgerPrice) 
    } 
    } 

しかし、価格を得るために、チケット内の変数にアクセスしようと動作するようには思えません。私が行方不明になっている簡単な方法はありますか?

+0

あなたはあなたのチケットオブジェクトへのstd入力から読んでいる動的な引数が渡されていない、それはあなたが望むものではありません?また、あなたの期待している結果は何ですか? – prayagupd

+0

OOPをあまり知らなくてもスカラを始めるなら、関数型プログラミング言語として直接学び、mutability pitの低下を避ける方が良いでしょう。スカラーの使用方法と理由については、https://stackoverflow.com/tags/scala/infoをご覧ください。 –

答えて

関連する問題