新聞中心
前例中當(dāng)Rational實(shí)例被創(chuàng)建之后,解釋器打印輸出“Rational@a0b0f5”。解釋器是通過(guò)調(diào)用Rational對(duì)象的toString方法獲得的這個(gè)看上去有些好玩兒的字串。缺省情況下,Rational類(lèi)繼承了定義在java.lang.Object類(lèi)上的toString實(shí)現(xiàn),只是打印類(lèi)名,一個(gè)@符號(hào)和一個(gè)十六進(jìn)制數(shù)。toString的結(jié)果主要是想通過(guò)提供可以用在除錯(cuò)時(shí)的語(yǔ)句打印,日志消息,測(cè)試錯(cuò)誤報(bào)告和解釋器,除錯(cuò)器輸出的信息來(lái)嘗試對(duì)程序員提供幫助。目前toString提供的結(jié)果不會(huì)特別有用,因?yàn)樗鼪](méi)有給出任何它被調(diào)用的Rational數(shù)值的任何線索。更有用的toString實(shí)現(xiàn)應(yīng)該打印出Rational的分子和分母。你可以通過(guò)在Rational類(lèi)里增加toString方法的方式重載:override缺省的實(shí)現(xiàn),如:

壺關(guān)ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書(shū)未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書(shū)銷(xiāo)售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書(shū)合作)期待與您的合作!
編輯推薦:Scala編程語(yǔ)言專(zhuān)題
- class Rational(n: Int, d: Int) {
- override def toString = n +"/"+ d
- }
方法定義前的override修飾符標(biāo)示了之前的方法定義被重載;第10章會(huì)更進(jìn)一步說(shuō)明。現(xiàn)在分?jǐn)?shù)顯示得很漂亮了,所以我們?nèi)サ袅饲耙粋€(gè)版本的Rational類(lèi)里面的println除錯(cuò)語(yǔ)句。你可以在解釋器里測(cè)試Rational的新行為:
- scala> val x = new Rational(1, 3)
- x: Rational = 1/3
- scala> val y = new Rational(5, 7)
- y: Rational = 5/7
【相關(guān)閱讀】
- 學(xué)習(xí)Scala中的Rational類(lèi):分?jǐn)?shù)的模型化
- Scala中的富包裝器:富操作和富類(lèi)列表
- Scala操作符的優(yōu)先級(jí)和關(guān)聯(lián)性
- Scala對(duì)象的相等性比較
- Scala的數(shù)學(xué)運(yùn)算、關(guān)系和邏輯操作及位操作符
網(wǎng)站名稱(chēng):ScalaRational對(duì)象的toString方法
URL標(biāo)題:http://m.5511xx.com/article/cdiceej.html


咨詢(xún)
建站咨詢(xún)
