범위가있는 루프의 예제로 이동하십시오
GO에서 범위는 데이터 유형을 반복하고 해당 값을 반환하는 데 사용됩니다. 1. 슬라이스 및 배열의 경우 범위는 인덱스 및 요소 사본을 반환합니다. 2. 원치 않는 인덱스 또는 값은 _를 사용하여 무시할 수 있습니다. 3. 맵의 경우 범위는 키와 값을 반환하지만 반복 순서는 고정되지 않았습니다. 4. 문자열의 경우 범위는 룬 인덱스와 문자 (룬 유형)를 반환하고 유니 코드를 지원합니다. 5. 채널의 경우 범위는 채널이 닫히고 단일 요소 만 반환 될 때까지 값을 계속 읽습니다. 범위를 사용하면 인덱스를 수동으로 관리하지 않으므로 반복을 간단하고 안전하게 만듭니다.
GO에서 range
키워드와 결합 된 for
루프는 일반적으로 배열, 슬라이스, 문자열,지도 및 채널을 반복하는 데 사용됩니다. 다음은 각 주요 사용 사례에 대한 명확한 예입니다.

1. range
가있는 슬라이스 위로 반복
패키지 메인 "FMT"가져 오기 func main () { 과일 : = [] String { "Apple", "Banana", "Cherry"} 색인, 값 : = 범위 과일 { fmt.printf ( "색인 : %d, 값 : %s \ n", 색인, 값) } }
산출:
색인 : 0, 값 : Apple 색인 : 1, 값 : 바나나 색인 : 2, 값 : 체리
range
두 가지 값을 반환합니다 : 인덱스의 인덱스와 사본이 해당 인덱스의 요소 사본을 반환합니다.
2. 지수 또는 값을 무시합니다
색인이 필요하지 않은 경우 :
_, 값 : = 범위 과일 { fmt.println ( "과일 :", 가치) }
인덱스 만 필요한 경우 :

색인 : = 범위 과일 { fmt.println ( "index :", index) }
_
사용하여 필요하지 않은 값을 무시하십시오.
3.지도를 통해 반복
연령 : =지도 [문자열] int { "Alice": 25, "밥": 30, "찰리": 35, } 키, 값 : = 범위 연령 { fmt.printf ( "이름 : %s, 나이 : %d \ n", 키, 가치) }
지도 반복 순서는 보장되지 않습니다 .
4. 문자열 위로 반복
S : = "가" 인덱스의 경우, char : = 범위 s { fmt.printf ( "색인 : %d, 문자 : %c \ n", 색인, char) }
산출:
색인 : 0, 문자 : g 색인 : 1, 문자 : o
참고 :
char
는 바이트가 아닌rune
(유니 코드 코드 포인트)이며 "Hello World"와 같은 다중 바이트 문자에 중요합니다.
5. 배열을 통해 반복
숫자 : = [3] int {10, 20, 30} i, v : = 범위 숫자 { fmt.printf ( "위치 %d : %d \ n", i, v) }
슬라이스와 동일한 동작.
range
행동 요약 :
데이터 유형 | 첫 번째 가치 | 두 번째 가치 |
---|---|---|
슬라이스 / 배열 | 인덱스 (int) | 요소 (사본) |
끈 | 룬 지수 (int) | 룬 (룬 유형) |
지도 | 열쇠 | 값 |
채널 | N/A (단 하나의 값 : 요소) | - |
채널의 경우
range
채널이 닫힐 때까지 값을 읽습니다.
채널과의 예 :
ch : = make (Chan Int, 2) ch <-1 ch <-2 닫기 (CH) 값을 위해 : = 범위 ch { fmt.println ( "수신 :", 가치) }
기본적으로 range
반복을 깨끗하고 안전하게 만듭니다. 수동 색인 관리가 필요하지 않습니다. 값이 필요하지 않을 때는 _
사용하고 각 유형에 대해 어떤 range
반환되는지 아는 것을 잊지 마십시오.
위 내용은 범위가있는 루프의 예제로 이동하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undress AI Tool
무료로 이미지를 벗다

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제

간결하고 효율적이며 읽을 수 있기 때문에 사전에 키가 존재하는지 확인하기 위해 IN 키워드를 사용하는 것이 좋습니다. 2. 키가 존재하는 경우 오해되지만 값은 없기 때문에 get () 메소드를 사용하여 키가 존재하는지 여부를 결정하는 것이 좋습니다. 3. 키 () 메소드를 사용할 수 있지만 키를 확인하기 위해 기본값에서는 중복됩니다. 4. 값을 가져와야하고 예상 키가 일반적으로 존재하면 Try-excrect를 사용하여 KeyError 예외를 포착 할 수 있습니다. 가장 권장되는 방법은 안전하고 효율적이며 None 값의 영향을받지 않는 IN 키워드를 사용하는 것입니다. 이는 대부분의 시나리오에 적합합니다.

Fmt.scanf를 사용하여 간단한 구조화 된 데이터에 적합한 형식 입력을 읽지 만 공간을 만날 때 문자열이 잘립니다. 2. Bufio.scanner를 사용하여 라인별로 읽고, 멀티 라인 입력, EOF 감지 및 파이프 라인 입력을 지원하며, 스캔 오류를 처리 할 수 있습니다. 3. IO.readall (OS.Stdin)을 사용하여 큰 블록 데이터 또는 파일 스트림을 처리하는 데 적합한 모든 입력을 한 번에 읽습니다. 4. 실시간 키 응답에는 golang.org/x/term과 같은 타사 라이브러리가 필요하며 Bufio는 기존 시나리오에 충분합니다. 실용적인 제안 : 대화식 간단한 입력을 위해 FMT.Scan을 사용하고, 라인 입력 또는 파이프 라인에 Bufio.scanner를 사용하고, 큰 블록 데이터에 io.readall을 사용하고 항상 처리하십시오.

SQLServer 자체는 서버리스 아키텍처를 지원하지 않지만 클라우드 플랫폼은 유사한 솔루션을 제공합니다. 1. Azure의 ServerlessSQL 풀은 자원 소비에 따라 데이터를 직접 쿼리하고 청구 할 수 있습니다. 2. COSMOSDB 또는 Blobstorage와 결합 된 Azureftionstion은 경량 SQL 처리를 실현할 수 있습니다. 3. Awsathena는 S3 데이터의 표준 SQL 쿼리를 지원하고 스캔 된 데이터를 기반으로 충전을 지원합니다. 4. GoogleBigQuery는 FederatedQuery를 통해 서버리스 개념에 접근합니다. 5. SQLServer 함수를 사용해야하는 경우 AzuresQLDatabase의 Serverless Service가없는 선택을 선택할 수 있습니다.

installjdk, setjava_home, installjavaextensionpackinvscode, createoropenamaven/gradleProject, introsproperProjectStructure, anduseBuilt-inrun/debugfeatures; 1. installjdkandVerifywithjava-versionandjavac-version, 2.installmava _

UseConnectionPoolingwithHikArictoreUsedAabaseConnectionsAndUceOverHead.2.usepRepRedStatementTopReventSQlinejectAndimProveQueryPerformance.3.fetchOnlyRequiredDatabySelectingSpecificColumnSandApplyingFilterSandPagination.4.useBatchOperationStor

SpringCloud 통합 모델 마스터 링은 최신 분산 시스템을 구축하는 데 중요합니다. 1. 서비스 등록 및 발견 : 자동 서비스 등록 및 발견은 Eureka 또는 SpringCloudkubernetes를 통해 실현되며로드 밸런싱은 리본 또는로드 밸런서로 수행됩니다. 2. 구성 센터 : SpringCloudConfig를 사용하여 다중 환경 구성을 중앙에서 관리하고 동적 로딩 및 암호화 처리를 지원합니다. 3. API 게이트웨이 : SpringCloudGateway를 사용하여 항목, 라우팅 제어 및 권한 관리를 통합하고 현재 제한 및 로깅을 지원합니다. 4. 분산 링크 추적 : Sleuth 및 Zipkin을 결합하여 요청 시각적 추구의 전체 프로세스를 실현합니다.

게으른로드는 연관성에 액세스 할 때만 쿼리 만 쉽게 N 1 문제로 이어질 수 있으며, 이는 관련 데이터가 필요한지 여부를 결정하지 않는 시나리오에 적합합니다. 2. 비상로드는 ()와 함께 사용하여 관련 데이터를 미리로드하여 N 1 쿼리를 피하기 위해 배치 처리 시나리오에 적합합니다. 3. 응급 로딩을 사용하여 성능을 최적화하고 Laraveldebugbar와 같은 도구를 통해 N 1 문제를 감지 할 수 있으며 모델의 속성이있는 $는 불필요한 성능 오버 헤드를 피하는 데 신중하게 사용됩니다.
