Skip to content

Commit e4501c4

Browse files
committed
add getslice
1 parent fc6e3c9 commit e4501c4

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

bitarray/bitarray.go

+8
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,14 @@ func (ba *BitArray) Add(array *BitArray) (nba *BitArray) {
116116
return
117117
}
118118

119+
func (ba *BitArray) GetSlice(start, end int) *BitArray {
120+
nb := &BitArray{ismsb: ba.ismsb}
121+
for i := start; i < end; i++ {
122+
nb.Append(ba.GetBit(i))
123+
}
124+
return nb
125+
}
126+
119127
func (ba *BitArray) Bytes() []byte {
120128
mod := ba.p % 8
121129
l := ba.p / 8

main.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import (
88

99
func main() {
1010
array := bitarray.NewBitArray(nil, bitarray.LSB)
11-
array.ExtendBytes([]byte{0, 0, 123, 234})
11+
array.ExtendBytes([]byte{0, 1, 255, 255})
1212
fmt.Println(array.String())
1313
array.Append(true)
1414
array.Append(false)

0 commit comments

Comments
 (0)