[問題] 用split分割字串後轉成Double - Restore

看板MacDev作者 (龍野南雲)時間5年前 (2019/03/18 13:00), 編輯推噓4(404)
留言8則, 2人參與, 5年前最新討論串1/1
作者: lisa090914 (好天氣,好心情~) 看板: MacDev 標題: [問題] 用split分割字串後轉成Double 時間: Sat Mar 2 20:12:29 2019 我想要把兩個數字以逗號隔開的字串,分開存成兩個Double 例如:(input) "12,34" -> (output) 12 & 34 用split得到回傳的陣列之後,因為裡面是subString的形式,所以必須先轉成String 然而在String(subString) 的時候,得到了這個錯誤訊息: 'init' has been renamed to 'init(describing:)' 修正之後,在後面轉成Double時卻得到nil 詳細如下圖 https://i.imgur.com/elcpo39.png
google到的解法是說加上 import Foundation 就能解決,但我加了錯誤還在QQ 另外發現 String(describing: splitedStr.first) 回傳的是 "Optional("-7")" , 我猜這應該是造成後面轉成Double會得到nil的原因 想請問版上大大這個問題該怎麼排除? 感激不盡 m(_ _)m ps. 使用環境 XCode 9.2,Swift 4.0 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.91.236 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1551528752.A.9B2.html

03/02 20:59,
當然是先unwrap啊,Double的init是一定要非optional的型
03/02 20:59

03/02 20:59,
態,你不能直接將還沒unwrap的變數傳進去
03/02 20:59

03/02 21:04,
另外,無論哪個程式語言都一樣,不要過度使用包洋蔥的作
03/02 21:04

03/02 21:04,
法,你無法知道這行的那邊出了問題
03/02 21:04
※ Deleted by: lisa090914 (140.114.225.19) 03/02/2019 22:55:07 -- 本文經原作者同意回復 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.251.43.139 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1552885230.A.6FB.html

03/18 13:08, 5年前 , 1F
!
03/18 13:08, 1F

03/18 15:57, 5年前 , 2F
這東西一行就可以解決了呀
03/18 15:57, 2F

03/18 16:03, 5年前 , 3F
03/18 16:03, 3F

03/18 16:04, 5年前 , 4F
?? 0的部分就看你轉不成功的時候要
03/18 16:04, 4F

03/18 16:04, 5年前 , 5F
甚麼當預設值就好了 若要可回傳null
03/18 16:04, 5F

03/18 16:05, 5年前 , 6F
將你的map改成compactMap就好
03/18 16:05, 6F

03/18 16:07, 5年前 , 7F
說錯compactMap會自動把nil刪除
03/18 16:07, 7F

03/18 16:22, 5年前 , 8F
在連結內改好並說明了 有問題再提出
03/18 16:22, 8F
文章代碼(AID): #1SZoNkRx (MacDev)