Saturday, November 18, 2006
Perl/펄 배열 추가 제거] shift, unshift, pop, push, 연산자(Operator) 사용법 예제
배열에 새 요소를 추가하거나 없애는 4가지 연산자(함수처럼 보이지만 함수는 아님)를 정리하자면
shift, unshift 는 배열의 맨 앞부분에서 작업하는 것이고
pop, push 는 배열의 맨 끝부분에서 작업하는 것입니다.
shift : 배열 첫번째 요소를 밖으로 빼내기 (배열에서 사라짐)
unshift : 배열 맨 앞에 새 요소 추가
pop : 배열 마지막 요소 밖으로 빼내기 (배열에서 사라짐)
push : 배열 맨 끝에 새 요소 추가
만약 push "ㅋㅋ", @a; 이렇게 파라미터(인수)의 순서를 혼동하여 적으면 Type of arg 1 to push must be array (not constant item) [첫번째 인수는 배열이어야 함] 이런 에러가 납니다.
▶▶ Perl/펄] 배열에 다른 배열 추가/합치기/병합 함수; Merge Array
shift, unshift 는 배열의 맨 앞부분에서 작업하는 것이고
pop, push 는 배열의 맨 끝부분에서 작업하는 것입니다.
shift : 배열 첫번째 요소를 밖으로 빼내기 (배열에서 사라짐)
unshift : 배열 맨 앞에 새 요소 추가
pop : 배열 마지막 요소 밖으로 빼내기 (배열에서 사라짐)
push : 배열 맨 끝에 새 요소 추가
배열 요소, 삽입 삭제 추출 예제 (shift, unshift, pop, push)
#!/usr/bin/perl
use strict; use warnings;
my @a;
my $s;
@a = qw( 자장면 짬뽕 우동 군만두 불도장 물만두 );
#######################################################
## shift : 배열 첫번째 요소를 밖으로 뽑아내기
$s = shift @a;
print $s, "\n"; # 출력 결과: 자장면
print "$_ " foreach (@a);
# 출력 결과: 짬뽕 우동 군만두 불도장 물만두
# 이제 배열에서 자장면이 사라졌습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## unshift : 배열 첫부분에 요소 추가
unshift @a, "ABC";
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장 물만두
# 이제 배열 앞부분에 ABC 라는 새 요소가 삽입되었습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## pop : 배열 마지막 요소를 밖으로 뽑아내기
$s = pop @a;
print $s, "\n"; # 출력 결과: 물만두
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장
# 이제 배열에서 물만두가 사라졌습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## push : 배열 끝에 요소 추가
push @a, "ㅋㅋ";
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장 ㅋㅋ
# 이제 배열 끝부분에 "ㅋㅋ" 라는 새 요소가 삽입되었습니다.
use strict; use warnings;
my @a;
my $s;
@a = qw( 자장면 짬뽕 우동 군만두 불도장 물만두 );
#######################################################
## shift : 배열 첫번째 요소를 밖으로 뽑아내기
$s = shift @a;
print $s, "\n"; # 출력 결과: 자장면
print "$_ " foreach (@a);
# 출력 결과: 짬뽕 우동 군만두 불도장 물만두
# 이제 배열에서 자장면이 사라졌습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## unshift : 배열 첫부분에 요소 추가
unshift @a, "ABC";
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장 물만두
# 이제 배열 앞부분에 ABC 라는 새 요소가 삽입되었습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## pop : 배열 마지막 요소를 밖으로 뽑아내기
$s = pop @a;
print $s, "\n"; # 출력 결과: 물만두
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장
# 이제 배열에서 물만두가 사라졌습니다.
print "\n\n"; # 편의상 줄바꿈
#######################################################
## push : 배열 끝에 요소 추가
push @a, "ㅋㅋ";
print "$_ " foreach (@a);
# 출력 결과: ABC 짬뽕 우동 군만두 불도장 ㅋㅋ
# 이제 배열 끝부분에 "ㅋㅋ" 라는 새 요소가 삽입되었습니다.
만약 push "ㅋㅋ", @a; 이렇게 파라미터(인수)의 순서를 혼동하여 적으면 Type of arg 1 to push must be array (not constant item) [첫번째 인수는 배열이어야 함] 이런 에러가 납니다.
▶▶ Perl/펄] 배열에 다른 배열 추가/합치기/병합 함수; Merge Array
tag: perl
Perl | 펄
<< Home