수색…


단순 배열 만들기 및 초기화

소개

배열 은 여러 값을 포함하는 컨테이너 객체입니다. 다음 이미지에서 크기가 10 인 배열을 볼 수 있습니다. 첫 번째 요소는 1이고 마지막 요소는 10입니다.

여기에 이미지 설명을 입력하십시오.

Autohotkey는 배열을 정의하고 생성하는 몇 가지 방법을 제공합니다.

  • 배열 : = []
  • Array : = Array ()

N 개의 항목으로 배열 만들기 및 초기화

Array := [Item1, Item2, ..., ItemN]
Array := Array(Item1, Item2, ..., ItemN)

Autohotkey에서는 항목이없는 배열을 가질 수 있습니다.

Array := [] ; works fine.

그러면 요소를 나중에 할당 할 수 있습니다.

Array[0] := 1

배열 크기는 length 라는 메서드를 사용하여 결정할 수 있습니다.

msgbox % array.length()  ; shows 1 in this case.

배열이 하늘이 아닌 경우, MinIndexMaxIndex / Length 는 배열에서 현재 사용중인 가장 낮은 인덱스와 가장 높은 인덱스를 반환합니다. 가장 낮은 인덱스는 거의 항상 1이므로 MaxIndex는 대개 항목 수를 반환합니다. 그러나 정수 키가 없으면 MaxIndex는 빈 문자열을 반환하고 Length는 0을 반환합니다.

다차원 배열 만들기 및 초기화

다음과 같이 다차원 배열을 만들 수 있습니다.

Array[1, 2] := 3

같은 시간에 만들고 초기화 할 수 있으며 내부 배열의 길이가 동일 할 필요는 없습니다.

Array := [[4,5,6],7,8]

이와 같은 배열을 배열 배열이라고도합니다.

배열 채우기

; Assign an item:
Array[Index] := Value

; Insert one or more items at a given index:
Array.InsertAt(Index, Value, Value2, ...)

; Append one or more items:
Array.Push(Value, Value2, ...)

배열 요소의 인덱스 값은 음의 정수 (-1, 0, 1, 2, 3, 4, ...) 일 수도 있습니다.

배열에서 요소 제거하기

; Remove an item:
RemovedValue := Array.RemoveAt(Index)

; Remove the last item:
RemovedValue := Array.Pop()

Array () 함수를 재정 의하여 사용자 정의 메서드 추가

AutoHotkey는 프로토 타입 기반 프로그래밍 언어입니다 . 즉, 내장 된 함수 / 객체를 언제든지 무시할 수 있습니다. 이 예제에서는 사용자 정의 클래스 객체 내에 메서드를 추가하기 위해 Array () 함수를 재정의하는 방법을 보여줍니다.

; Overrides Array()
Array(Args*) {
    Args.Base := _Array
    Return Args
}

; Custom Class Object with Methods
Class _Array {
    
    ; Reverses the order of the array.
    Reverse() {
        Reversed := []
        Loop % This.MaxIndex()
            Reversed.Push(This.Pop())
        Return Reversed
    }    
    
    ; Sums all Integers in Array
    Sum(Sum=0) {
        For Each, Value In This
            Sum += Value Is Integer ? Value : 0
        Return Sum
    }
}

; Arr == ["Hello, World!", 4, 3, 2, 1]
Arr := [1, 2, 3, 4, "Hello, World!"].Reverse() 
                    
; SumOfArray == 10
SumOfArray := Arr.Sum() 


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow