Maison > développement back-end > Golang > Création d'une var de type chaîne dans Go

Création d'une var de type chaîne dans Go

WBOY
Libérer: 2024-02-10 11:57:09
avant
945 Les gens l'ont consulté

Création dune var de type chaîne dans Go

En langage Go, créer des variables de type chaîne est très simple. En utilisant le mot-clé var, nous pouvons déclarer et initialiser une variable chaîne. Par exemple, var str string = "Hello, World!" Cette instruction créera une variable chaîne nommée str et l'initialisera à "Hello, World!". De plus, nous pouvons également utiliser des déclarations de variables courtes pour créer des variables de chaîne, telles que : str := "Hello, World!" De cette façon, nous pouvons déclarer et initialiser les variables de manière plus concise. Qu'il s'agisse d'une déclaration var ou d'une variable courte, nous pouvons utiliser cette variable chaîne dans le code suivant. Dans Go, le type chaîne est un type de données très couramment utilisé qui peut stocker et manipuler des données texte. En utilisant le mot-clé var ou une déclaration de variable courte, nous pouvons facilement créer des variables de type chaîne et les utiliser dans le programme.

Contenu de la question

Tout d'abord, je voudrais dire que je suis assez nouveau dans le langage Go.

Mon programme prend un CSV et lit chaque ligne comme une chaîne [] et les ajoute toutes à une tranche. Une autre partie du programme est censée ajouter une autre entrée à la tranche contenant les nouvelles informations, mais je ne sais pas comment déclarer la nouvelle entrée comme type []string. S'il essaie d'utiliser une structure, un code, le type []Customer est incompatible avec le type []string. Si je convertis la tranche []string en type []Customer au début, je perds la possibilité d'utiliser time.Parse sur certaines parties de chaque entrée. Je ne peux pas déclarer une nouvelle entrée en tant que type []string. Est-ce qu'il y a un moyen de faire ça? Code pour lire un CSV et l'ajouter à une tranche de type []string.

var customerInfo [][]string

for {
    record, err := reader.Read()
    if err == io.EOF {
        break
    }
    if err != nil {
        panic(err)
    }
    customerInfo = append(customerInfo, record)
}
Copier après la connexion

Fonction time.Parse et code pour mettre à jour une colonne de chaînes [].

today := time.Now()
for i, e := range customerInfo {
    if i > 0 {
        lastOilChange, err := time.Parse("2006-01-02", e[4])
        if err != nil {
            panic(err)
        }
        diff := today.Sub(lastOilChange)
        diffInMonths := float64(diff.Hours() / 24 / 30)
        if diffInMonths > 6 {
            e[6] = today.Format("2006-01-02")
        }
    }
}
Copier après la connexion

Code pour ajouter de nouvelles lignes au CSV (la seule partie qui ne fonctionne pas actuellement)

var newCust []string = {"1500", "Your Name", "Make Model", "City", "date1", "date2", "date3", "date4"}
customerInfo = append(customerInfo, newCust)
Copier après la connexion

L'erreur que j'obtiens lorsque j'exécute ce programme en utilisant le code qui ajoute de nouvelles lignes à un CSV est

syntax error: unexpected {, expected expression
Copier après la connexion

Solution

Texte composémanquanttype. Ajoutez un type comme ceci :

var newCust []string = []string{"1500", "Your Name", "Make Model", "City", "date1", "date2", "date3", "date4"}
Copier après la connexion

Faites attention au deuxième []string.

Pas besoin de répéter les types. Utilisez ce code :

var newCust = []string{"1500", "Your Name", "Make Model", "City", "date1", "date2", "date3", "date4"}
Copier après la connexion

encore plus court :

newCust := []string{"1500", "Your Name", "Make Model", "City", "date1", "date2", "date3", "date4"}
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal