>  기사  >  백엔드 개발  >  Go 언어에서 슬라이스를 삭제하는 방법

Go 언어에서 슬라이스를 삭제하는 방법

藏色散人
藏色散人원래의
2020-12-30 17:50:143793검색

Go 언어슬라이스 삭제 방법: 먼저 go 샘플 파일을 만든 다음 변수를 선언합니다. 마지막으로 "ss=append(ss[:index],ss[index+1:]...)print("를 전달합니다. delete",ss)" 메소드를 사용하여 슬라이스 요소를 삭제합니다.

Go 언어에서 슬라이스를 삭제하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, Go 버전 1.14, Dell G3 컴퓨터.

1. 변수를 선언하고 nil, 길이: 0, 주소: 0, nil

func main(){
    var ss []string;
    fmt.Printf("length:%v \taddr:%p \tisnil:%v",len(ss),ss, ss==nil)    
}
 
---
Running...
 
length:0     addr:0x0     isnil:true
Success: process exited with code 0.

2로 자동 초기화합니다. 슬라이스 추가, 삭제, 삽입 작업

func main(){
    var ss []string;
    fmt.Printf("[ local print ]\t:\t length:%v\taddr:%p\tisnil:%v\n",len(ss),ss, ss==nil)    
    print("func print",ss)
    //切片尾部追加元素append elemnt
    for i:=0;i<10;i++{
        ss=append(ss,fmt.Sprintf("s%d",i));
    }
    fmt.Printf("[ local print ]\t:\tlength:%v\taddr:%p\tisnil:%v\n",len(ss),ss, ss==nil)    
    print("after append",ss)
    //删除切片元素remove element at index
    index:=5;
    ss=append(ss[:index],ss[index+1:]...)
    print("after delete",ss)
    //在切片中间插入元素insert element at index;
    //注意:保存后部剩余元素,必须新建一个临时切片
    rear:=append([]string{},ss[index:]...) 
    ss=append(ss[0:index],"inserted")
    ss=append(ss,rear...)
    print("after insert",ss)
}
func print(msg string,ss []string){
    fmt.Printf("[ %20s ]\t:\tlength:%v\taddr:%p\tisnil:%v\tcontent:%v",msg,len(ss),ss, ss==nil,ss)    
    fmt.Println()
}
------
Running...
 
[ local print ]    :     length:0    addr:0x0    isnil:true
[           func print ]    :    length:0    addr:0x0    isnil:true    content:[]
[ local print ]    :    length:10    addr:0xc208056000    isnil:false
[         after append ]    :    length:10    addr:0xc208056000    isnil:false    content:[s0 s1 s2 s3 s4 s5 s6 s7 s8 s9]
[         after delete ]    :    length:9    addr:0xc208056000    isnil:false    content:[s0 s1 s2 s3 s4 s6 s7 s8 s9]
[         after insert ]    :    length:10    addr:0xc208056000    isnil:false    content:[s0 s1 s2 s3 s4 inserted s6 s7 s8 s9]
 
Success: process exited with code 0.

권장: "go 언어 튜토리얼"

위 내용은 Go 언어에서 슬라이스를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.