Go - Slices - 2


  • Slice is NOT comparable
  • Standard library provide a way to compare 2 byte slices
  • Reference type such as pointers and channels, the == test whether two entities refer to the same thing
  • The only legal slice comparison is against nil
  • Zero value of slice is nil. Capacity of nil slice is 0. Not nil slice capacity may be 0 as well. 
  • Use built-in append function to add element to a slice
    It seems underlying array become another reference after slice capacity bigger than declared one
  • Append element to slice to exceed capacity, what will happen? 
    => New slice will be generated

沒有留言:

張貼留言

別名演算法 Alias Method

 題目 每個伺服器支援不同的 TPM (transaction per minute) 當 request 來的時候, 系統需要馬上根據 TPM 的能力隨機找到一個適合的 server. 雖然稱為 "隨機", 但還是需要有 TPM 作為權重. 解法 別名演算法...