>백엔드 개발 >Golang >슬라이스가 커짐에 따라 슬라이스의 새 요소를 함수 매개변수에 자동으로 추가하는 방법

슬라이스가 커짐에 따라 슬라이스의 새 요소를 함수 매개변수에 자동으로 추가하는 방법

王林
王林앞으로
2024-02-15 18:00:11895검색

슬라이스가 커짐에 따라 슬라이스의 새 요소를 함수 매개변수에 자동으로 추가하는 방법

PHP 편집기 Xiaoxin은 실용적인 기술, 즉 슬라이스(Slice)가 커질 때 함수 매개변수에 새 요소를 자동으로 추가하는 방법을 공유합니다. 슬라이스는 유연한 데이터 구조이지만 함수 매개변수 내에서 사용될 때 몇 가지 문제가 발생할 수 있습니다. 이 글에서는 가변 매개변수(Variadic Arguments)와 스프레드 연산자(Spread Operator)를 사용하여 슬라이스가 커짐에 따라 함수 매개변수에 새 요소를 자동으로 추가하는 간결한 방법을 소개합니다. 이 기술은 코드의 가독성과 유지관리성을 향상시킬 수 있습니다. 함께 배워보세요!

질문 내용

이를 자동화할 수 있는 방법이 있나요?

으아악

b[3]을 fmt.println의 인수로 자동으로 추가하는 방법이 있나요?

해결책

다음과 같은 경우에 주의하세요. b 的类型为 []any,您可以将其作为 fmt.println():

으아악

하지만 b 的类型是 []string 때문에 그럴 수는 없습니다.

하지만 슬라이스b 转换为 []any하면 작동합니다. 다음 도우미 기능을 사용하여 이 작업을 수행할 수 있습니다.

으아악

그런 다음:

으아악

이 결과는 다음과 같습니다(go 놀이터에서 시도해 보세요):

으아악

참고: convert() 中创建一个新切片不会使该解决方案变慢,因为显式传递值(如 fmt.println(b[0], b[1], b[2]) )에서는 암시적으로 슬라이스를 생성합니다.

관련 질문 보기: 여러 반환 값이 있는 가변 함수의 값을 전달하는 방법은 무엇입니까?

위 내용은 슬라이스가 커짐에 따라 슬라이스의 새 요소를 함수 매개변수에 자동으로 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제