m_shige1979のときどきITブログ

プログラムの勉強をしながら学習したことや経験したことをぼそぼそと書いていきます

Github(変なおっさんの顔でるので気をつけてね)

https://github.com/mshige1979

swiftの学習

プログラム言語の学習は写経でたくさんコードを書いて慣れていかないといけないのでいろいろコードを書く必要があります。他の言語の勉強もあるけどちょっと今回はこれを勉強してみる。

基本

変数と定数、出力
//
//  main.swift
//

import Foundation

// 変数定義
var hoge = "aaa"

// 定数?定義
let fuga = "bbb"

// 出力
println("Hello, World!" + " " + hoge + " " + fuga)

※基本、スクリプト言語のような感じ

変数名などにマルチバイト文字を使用できる
//
//  main.swift
//

import Foundation

// 変数定義
var ふが = "あああ"

let ほげ = "てすと"

// 出力
println("Hello, World!" + " " + ほげ + " " + ふが)

※vb6とかでも出来たのでそこまで驚きではないけど書きにくい部分があるのでそんなには使わないかも

if、for
//
//  main.swift
//

import Foundation

for var i=1;i<=100;i++ {
    
    var option = ""
    
    if(i % 3) == 0 && (i % 5) == 0 {
        option = "fizzbuzz"
        
    }else if (i % 3) == 0 {
        option = "fizz"
        
    }else if(i % 5) == 0 {
        option = "buzz"
        
    }else{
    
    }
    
    println("\(i):" + option)
    
}

※数値として定義されたものと文字列としているものを簡単には連結できないようで、変数内で展開する制御が別途必要

while
//
//  main.swift
//

import Foundation

var idx = 1;
while(idx <= 100){
    
    var option = ""
    
    if(idx % 3) == 0 && (idx % 5 == 0){
        option = "fizzbuzz"
        
    } else if(idx % 3) == 0 {
        option = "fizz"
        
    } else if(idx % 5) == 0 {
        option = "buzz"
        
    }else{
            
    }
    
    println("\(idx)" + ":" + option)
    
    idx++;
}
リスト型
//
//  main.swift
//

import Foundation

// リスト
var lists = ["aaa", "bbb", "ccc", "ddd"]
for item in lists {
    println(item)
}

※配列変数みたいなもの

ハッシュ型+リスト
//
//  main.swift
//

import Foundation

// リスト+ハッシュ?
var lists = [
    "aaa": 100,
    "bbb": 250,
    "ccc": 180,
    "ddd":  400
]

for (_key, _value) in lists {
    println("\(_key):\(_value)")
}



数値型を文字列として展開

以下はエラー
import Foundation

var num = 100
println("hoge " + num)

※数値型で初期化したものと文字列を連結しようとしているので…

数値方は展開する
import Foundation

var num = 100
println("hoge " + "\(num)")

※ダブルクォートで挟んで\()を仕込む

括弧の中で計算もできる
import Foundation

var num = 100
println("hoge " + "\(num+100)")

所感

はてな記法swiftはまだコードに色がつかない…
ただ、まだ出てきたばかりなので有効な部分や難しい方法などがあるので色々勉強することが必要な感じ
最初は簡単そうにみえて実際に組んで失敗しないように調べは進めておく必要があります

他の言語と似ている部分が多いから覚えやすい感じがするけどxcodeの経験はほとんどないのでそちらの学習コストが掛かる(´・ω・`)