質問編集履歴
2
訂正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
```swift
|
|
8
8
|
func removeZero(_ str: String) -> String {
|
|
9
9
|
|
|
10
|
+
// 整数部分のの文字列にだけ処理をかけるので小数部分をもつものを持たないもので処理を分岐
|
|
11
|
+
|
|
10
12
|
if let d: String.Index = str.firstIndex(of: ".") {
|
|
11
13
|
// 小数部分が存在する場合の処理
|
|
12
14
|
|
|
@@ -17,6 +19,9 @@
|
|
|
17
19
|
|
|
18
20
|
let tmpIntStr: String = String(str[s ..< d])
|
|
19
21
|
let intStr: String = String(Int(tmpIntStr) ?? 0)
|
|
22
|
+
|
|
23
|
+
// 整数部分に対して変換処理をする(略)
|
|
24
|
+
|
|
20
25
|
// 小数部分を取り出す
|
|
21
26
|
let deciDouble: Double = Double(String(str[d ..< e])) ?? 0.0
|
|
22
27
|
let tmpStr: String = String(String(deciDouble).dropFirst())
|
|
@@ -27,6 +32,8 @@
|
|
|
27
32
|
|
|
28
33
|
} else {
|
|
29
34
|
// 小数部分がない場合の処理
|
|
35
|
+
|
|
36
|
+
// 整数部分に対して変換処理をする(略)
|
|
30
37
|
return String(Int(str) ?? 0)
|
|
31
38
|
}
|
|
32
39
|
}
|
1
訂正
title
CHANGED
|
File without changes
|
body
CHANGED
|
@@ -31,8 +31,8 @@
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
print(removeZero("12.34000")) //=>
|
|
34
|
+
print(removeZero("12.34000")) //=> 12.34
|
|
35
|
-
print(removeZero("-12.00")) // => 12
|
|
35
|
+
print(removeZero("-12.00")) // => -12
|
|
36
36
|
print(removeZero("0.00")) // => 0
|
|
37
37
|
print(removeZero("000.0000")) // => 0
|
|
38
38
|
print(removeZero("0000")) // => 0
|