2016-02-12 4 views
1

Я пытаюсь создать динамическую структуру в swift на основе пользовательского ввода.Создание динамических структур в Swift - на основе ввода пользователем

struct Diagnosis { 

var diagName = String() // Name of the diagnosis 
var diagSymptoms = [String]() // Symptoms of the diagnosis in a ranked array to identify prevelancy 
var diagSpecialization = [String]() // the specializations which would mostly encounter this diagnosis 
var diagRank = Int() // the overall rank of the diagnosis 
var diagSynonoms = [String]() // the other name thru which the same diagnosis is called/referred. 

// func init(diagName: String(),diagSymptoms: [String](),diagSpecialization: [String](),diagSynonoms: [String]()) 
init(let pasdiagName: String,let pasdiagSymptoms:Array<String>) { 
    self.diagName = pasdiagName 
    self.diagSymptoms = pasdiagSymptoms 
} 
} 

var maleria = Diagnosis(pasdiagName: "Maleria",pasdiagSymptoms: ["fever","chill","body pain"]) 

выше создает структуру maleria - Но в будущем я хочу иметь вход от пользователя и создать структуру для того, введенной строки

var abc = "typhoid" 

let valueof(abc) = Diagnosis() 

Значение функции является то, я просто поставить здесь произвольно, чтобы разъяснить мое объяснение. Я знаю, что могу сделать это на питоне, и я новичок в быстром. Заранее спасибо за помощь.

+0

То, что вы описали, называется словарь ... – Wain

ответ

0

Как указано @Wain, вы должны использовать Dictionary.

Так вы создаете изменяемый словарь, где ключ String, а значение может быть любого типа.

var dict = [String:Any]() 

Это, как вы кладете пар ключ/значение в словаре

dict["year"] = 2016 
dict["word"] = "hello" 
dict["words"] = ["hello", "world"] 

И это, как вы извлечь значение и использовать его

if let word = dict["word"] as? String { 
    print(word) // prints "hello" 
} 
+0

Большое спасибо - он должен работать (Позор мне, как я пропустил это :() – swami

Смежные вопросы