我嘗試了不同的策略,但無濟于事。中的以下代碼顯示了聲明但未用于 的變量,以及當它們在強制轉換中使用時(最后 3 行代碼):vscodeyearmonthdayvar year, month, day intyear = -1month = -1day = -1// Calculate Year Month Dayif eventCalendar == "gregorian" { s := strings.Split("eventDate", "/") year, err := strconv.Atoi(s[0]) if err != nil { log.Fatal("Cannot convert year to integer: " + s[0] + ". " + err.Error()) } month, err := strconv.Atoi(s[1]) if err != nil { log.Fatal("Cannot convert month to integer: " + s[1] + ". " + err.Error()) } day, err := strconv.Atoi(s[2]) if err != nil { log.Fatal("Cannot convert day to integer: " + s[2] + ". " + err.Error()) }} else if eventCalendar == "jalali" { s := strings.Split("eventDate", "-") year, err := strconv.Atoi(s[0]) if err != nil { log.Fatal("Cannot convert year to integer: " + s[0] + ". " + err.Error()) } month, err := strconv.Atoi(s[1]) if err != nil { log.Fatal("Cannot convert month to integer: " + s[1] + ". " + err.Error()) } day, err := strconv.Atoi(s[2]) if err != nil { log.Fatal("Cannot convert day to integer: " + s[2] + ". " + err.Error()) } // TODO: Convert to gregorian} else { panic("Unknown calendar type: eventcalendar")}strYear := strconv.Itoa(year)strMonth := strconv.Itoa(month)strDay := strconv.Itoa(day)// ...其余代碼
1 回答

慕仙森
TA貢獻1827條經驗 獲得超8個贊
在 if 范圍內創建名為“年”、“月”和“日”的新變量:
year, err := strconv.Atoi(s[0])
這就是問題所在。首先,將 a 添加到代碼中,并從函數調用中刪除冒號::=var err error
var year, month, day int
var err error
year = -1
month = -1
day = -1
// ...
year, err = strconv.Atoi(s[0])
// ...
我相信這應該可以解決您的問題?,F在,您正在 if 范圍內創建年、月和日,并且從不使用它們(在范圍內)。
- 1 回答
- 0 關注
- 153 瀏覽
添加回答
舉報
0/150
提交
取消