回答編集履歴

1

サンプルコード

2019/10/01 06:16

投稿

takabosoft
takabosoft

スコア8356

test CHANGED
@@ -25,3 +25,97 @@
25
25
 
26
26
 
27
27
  こうした関数をもう一個実装してやれば、期待した動きになると思います。
28
+
29
+
30
+
31
+ ----
32
+
33
+ 追記:
34
+
35
+ サンプルコード作っておきました。
36
+
37
+
38
+
39
+ ```swift
40
+
41
+ import UIKit
42
+
43
+
44
+
45
+ let cell01_data: [String: Any] = [
46
+
47
+ "Int": 12345,
48
+
49
+ "String": "Hogehoge",
50
+
51
+ "Date": Date(),
52
+
53
+ ]
54
+
55
+
56
+
57
+ func changeString(data: String) -> String {
58
+
59
+ return data
60
+
61
+ }
62
+
63
+
64
+
65
+ func changeString(data: Int) -> String {
66
+
67
+ return String(data)
68
+
69
+ }
70
+
71
+
72
+
73
+ func changeString(data: Date) -> String {
74
+
75
+ let f = DateFormatter() //日付フォーマット
76
+
77
+ f.dateFormat = "yyyy"
78
+
79
+ return f.string(from: data)
80
+
81
+ }
82
+
83
+
84
+
85
+ func changeString(data: Any?) -> String {
86
+
87
+ switch data {
88
+
89
+ case let intValue as Int:
90
+
91
+ return changeString(data: intValue)
92
+
93
+ case let stringValue as String:
94
+
95
+ return changeString(data: stringValue)
96
+
97
+ case let dateValue as Date:
98
+
99
+ return changeString(data: dateValue)
100
+
101
+ default:
102
+
103
+ return "?"
104
+
105
+ }
106
+
107
+ }
108
+
109
+
110
+
111
+ print(changeString(data: cell01_data["Int"])) // 12345
112
+
113
+ print(changeString(data: cell01_data["String"])) // Hogehoge
114
+
115
+ print(changeString(data: cell01_data["Date"])) // 2019
116
+
117
+ ```
118
+
119
+
120
+
121
+ 他にも書き方はあると思いますが、参考になれば。