第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Golang 打印不需要的值

Golang 打印不需要的值

Go
手掌心 2022-06-13 14:57:37
我是 GoLang 的新手,正在嘗試編寫這個(gè)程序 -程序應(yīng)該寫成一個(gè)循環(huán)。在進(jìn)入循環(huán)之前,程序應(yīng)該創(chuàng)建一個(gè)大小(長(zhǎng)度)為 3 的空整數(shù)切片。在每次通過循環(huán)期間,程序都會(huì)提示用戶輸入要添加到切片中的整數(shù)。程序?qū)⒄麛?shù)添加到切片中,對(duì)切片進(jìn)行排序,并按排序順序打印切片的內(nèi)容。切片的大小必須增加以容納用戶決定輸入的任意數(shù)量的整數(shù)。當(dāng)用戶輸入字符“X”而不是整數(shù)時(shí),程序應(yīng)該只退出(退出循環(huán))。所以我的代碼是 -package mainimport (    "fmt"    "sort"    "strconv")func main() {    mySlice := make([]int, 3)    var input string    for i := 0; i < len(mySlice); i++ {        fmt.Println("Please enter a number")        fmt.Scanln(&input)        if input == "X" {            break        }        mySlice_var, err := strconv.Atoi(input)        if err != nil {            fmt.Println("Wrong input")            continue        }        // mySlice[i] = mySlice_var        mySlice = append(mySlice, mySlice_var)        // mySlice[i] = mySlice_var        sort.Ints(mySlice)        fmt.Println(mySlice)    }}例如,如果我先輸入 4,然后輸入 5,然后輸入 1,它將打印我Please enter a number4[0 0 0 4]Please enter a number5[0 0 0 4 5]Please enter a number1[0 0 0 1 4 5]看起來它可以打印并排序,但是我如何擺脫前三個(gè)“0”?謝謝!
查看完整描述

2 回答

?
江戶川亂折騰

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超5個(gè)贊

希望這是您想要打印的方式!(迭代切片,只打印非零值),試試這個(gè)!


package main


import (

        "fmt"

        "sort"

        "strconv"

)


func main() {

        mySlice := make([]int, 3)

        var input string


        for i := 0; i < len(mySlice); i++ {

                fmt.Println("Please enter a number")

                fmt.Scanln(&input)

                if input == "X" {

                        break

                }


                mySlice_var, err := strconv.Atoi(input)

                if err != nil {

                        fmt.Println("Wrong input")

                        continue

                }


                // mySlice[i] = mySlice_var

                mySlice = append(mySlice, mySlice_var)

                // mySlice[i] = mySlice_var


                sort.Ints(mySlice)

//              fmt.Println(mySlice)

//Iterating Over Slice , and printed only non zero values

                for _,v := range mySlice{

                        if v != 0 {

                                fmt.Printf("%v",v)

                        }

                }

                fmt.Println("")


        }


}


查看完整回答
反對(duì) 回復(fù) 2022-06-13
?
波斯汪

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超4個(gè)贊

mySlice := make([]int, 3)

它很好地初始化一個(gè)切片,它的大小是3,然后附加3個(gè)零來初始化它


像這樣打?。?/p>


fmt.Println(mySlice)

fmt.Println("len: ", len(mySlice))

fmt.Println("cap: ", cap(mySlice))

[0 0 0]

len:  3

cap:  3

你只能初始化 init cap


mySlice := make([]int, 0, 3)

fmt.Println(mySlice)

fmt.Println("len: ", len(mySlice))

fmt.Println("cap: ", cap(mySlice))

[]

len:  0

cap:  3


查看完整回答
反對(duì) 回復(fù) 2022-06-13
  • 2 回答
  • 0 關(guān)注
  • 169 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)