Swift給Double添加千位符

今天有一個(gè)網(wǎng)友問(wèn)我如何講double轉(zhuǎn)成string,然后添加千位符,隨后他把他的方法發(fā)給我看了,這一看我的眼鏡差點(diǎn)掉地上。

網(wǎng)友的方法

當(dāng)時(shí)我心里一驚:有幾個(gè)質(zhì)疑:

1.這方法能添加千位符嗎?

2.guard是這樣使用的嗎?

我們來(lái)仔細(xì)分析這一段代碼存在的問(wèn)題:

要格式化成千位符字符串的是Double類型的數(shù)據(jù),我們應(yīng)該對(duì)Double類型擴(kuò)展;

變量命名比較混亂,已經(jīng)存在price了,還是用price=price

最重要的是沒(méi)有實(shí)現(xiàn)加‘千位符’的功能


那我們已經(jīng)知道問(wèn)題所在了,就知道如何入手去寫(xiě)了


正確的姿勢(shì)1

調(diào)用的方法如下:

正確的姿勢(shì)2

輸出為:formatter price CN¥2,345,654,345.00?

當(dāng)locale設(shè)置為en_CN時(shí),輸出多了一個(gè)CN兩個(gè)字母

當(dāng)locale設(shè)置為current時(shí),輸出為formatter price ?¥2,345,654,345.00。需要注意的是,該輸出需要設(shè)置語(yǔ)言國(guó)際化之后完全依靠系統(tǒng)設(shè)置的語(yǔ)言和區(qū)域格式,當(dāng)語(yǔ)言和區(qū)域格式為中文時(shí),輸出入上所述。


配置語(yǔ)言和區(qū)域格式

以上兩種方式的輸出需要根據(jù)自己的需求選擇哪種方式,根據(jù)自己的業(yè)務(wù)需求選擇即可。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 12,419評(píng)論 6 13
  • 在JavaSe5中,推出了C語(yǔ)言中printf()風(fēng)格的格式化輸出。這不僅使得控制輸出的代碼更加簡(jiǎn)單,同時(shí)也給與J...
    三藏君閱讀 855評(píng)論 0 0
  • longaaaa =14200666; Console.WriteLine(aaaa.ToString("N0")...
    魚(yú)落于天閱讀 1,049評(píng)論 0 1
  • MySQL5.6從零開(kāi)始學(xué) 第一章 初始mysql 1.1數(shù)據(jù)庫(kù)基礎(chǔ) 數(shù)據(jù)庫(kù)是由一批數(shù)據(jù)構(gòu)成的有序的集合,這些數(shù)據(jù)...
    星期四晚八點(diǎn)閱讀 1,232評(píng)論 0 4
  • 你就是臨在 就是本體 你一直覺(jué)醒著 只是忘了 呼吸 身體 此刻 藍(lán)天 微風(fēng) 映在了湖面上 ...
    灶心土閱讀 528評(píng)論 0 2

友情鏈接更多精彩內(nèi)容