Ich versuche, eine for-Schleife zu stoppen, wenn eine Zeichenfolge eine bestimmte Zahl enthält. Das einzige Problem ist, dass es nach dem Hinzufügen von 31 zum Zähler keinen Wert mehr zur Zeichenkette hinzufügt. Ich glaube, es wird schnell werden, bevor es aufholen kann. Ich weiß, dass es immer einen anderen Weg gibt, um die Aufgabe zu erledigen, aber ich möchte nur verstehen, warum es das tut.Golang für Schleife läuft weiter
Was ich versuche zu erreichen, ist der Zähler als die Höhe handeln. Die theSlice = 8 und webSlices ist eine Liste. Der ganze Text sagt "Höhe ist eine 1", also versuche ich zu sehen, welche Zahl die Höhe ist und mache den Zähler gleich.
Code:
func breakDownSlice(theSlice int, webSlices []string) {
counter := 0
done := false
for done == false {
log.Println(webSlices[theSlice])
log.Println(counter)
done = strings.Contains(webSlices[theSlice], string(counter))
if done == true {
log.Printf("The height is %d", counter)
} else {
counter++
}
}
}
Eingabe teilen können und die Ausgabe Sie bekommen? Was ist der Wert von 'webSlices [theSlice]'? – smarx
WebSlices [theSlice] = „Höhe ist ein 1“ Ausgang ist „Die Höhe ist 1“ und geht weiter zu „Die Höhe 32“ Es befindet sich auf 1 aufhören sollte, aber es geht bis 32. – GoofBall101
Wenn das der Ausgang ist , dann kann das nicht der Code sein, den du gerade betreibst, oder? Ich sehe nicht, wie die '% d'-Formatierung' 1-32' erzeugen könnte. – smarx