2018년 5월 17일 목요일

文字列補間、コンソールログ、定数と変数、基本データタイプ:Swift文法要約1 - edWith Swift入門

edWithのiOS Developer講座を受講中です。
Swiftの経験がなくとも習いながら理解できると思ってましたが。。違いました。
Swift入門を先に受講しているのでそれを整理します。

Swift入門

1.文字列補間(String Interpolation)
文字列に変数(もしくは定数)の値を表現
let num: Int=2
"My favorite number is \(num)."   //\<-バックスラッシュ

2.コンソールログ
print()     //単純文字列出力
dump()   //インスタンスの詳細情報を出力

3.定数と変数
let constantNum: Int = 100   //let 定数名: タイプ = 値
var variableNum: Int = 100    //var 変数名: タイプ = 値

3.基本データタイプ
Swiftはデータタイプに厳しい
1)Bool
var isGood: Bool = true
isGood = false
isGood = 0       // error: cannot assign value of type 'Int' to type 'Bool'
isGood = 1       // error: cannot assign value of type 'Int' to type 'Bool'

(明示的な形変換)
import UIKit
isGood = (1 as NSNumber).boolValue

2)Int(UInt)
基本的に 64ビート の整数形
var myNum: Int = 100
myNum = 100.2 // error: cannot assign value of type 'Double' to type 'Int'

(明示的な形変換)
myNum=Int(100.2)

var myUNum: UInt = 100
myUNum = -100 // error: Negative integer '-100' overflows when stored into unsigned type 'UInt'

(明示的な形変換)
myUNum=(-100 as NSNumber).uintValue
->エラーは発生しないが...どデカい数( 9223372036854775807 )になりました。

var myNum: Int = 100
var myUNum: UInt = 100
myUNum = myNum // error: Cannot convert value of type 'Int' to specified type 'UInt'

(明示的な形変換)
myUNum = UInt.init(myNum)

3)Float, Double
実数タイプ, Float(32ビート 浮動少数型), Double(64ビート 浮動少数型)

var myFloat: Float = 10.1
myFloat=100
var myInt: Int = 100
myFloat=myInt  // error: Cannot convert value of type 'Int' to specified type 'Float'

(明示的な形変換)
import UIKit
myFloat = (myInt as NSNumber).floatValue

4)Character, String
文字タイプ, Unicode, 二重ギュメ("")使用

var myCharacter: Character = "A"
myCharacter = "AB" 
// error: Cannot convert value of type 'String' to specified type 'Character'

var myCharacter: Array<Character> = ["A","B"]
var myCharacter: [Character] = ["A","B"]

var myCharacter: Character = "A"
var myString: String = "AB"
myString = myCharacter // error: cannot assign value of type 'Character' to type 'String'

(明示的な形変換)
myString = String(myCharacter)

문자열 보간법, 콘솔로그, 상수와 변수, 기본데이터 타입 : Swift 문법요약 1 - edWith Swift입문

댓글 없음:

댓글 쓰기

1、2、QWER! in OSAKA (大阪 2025/4/10(木) Yogibo META VALLEY)

https://www.creativeman.co.jp/event/qwer-osaka/ QWER - CREATIVEMAN PRODUCTIONS 主催:LIVET 企画:ソニー・ミュージックソリューションズ 招聘:クリエイティブマンプロダクション 制作協力:クリエイテ...