Perl 로 어레이에서는 groupx 크기
내가 발견한 여러 가지 방법을 찾을 수 있을 것 같아 크기를 어레이에서는. 이러한 세 가지 방법이 차이가 뭘까?
my @arr = (2);
print scalar @arr; # First way to print array size
print $#arr; # Second way to print array size
my $arrSize = @arr;
print $arrSize; # Third way to print array size
235
11
첫 번째와 세 번째 방법 같습니다. 그들은 충족되었으며 평가하십시오 어레이입니다 스칼라 컨텍스트입니다. 이 기준이 될 수 있을 수 있는 방법은 꼭 이래야겠어요 고려해보십시오 array& # 39 의 크기.
실제로 두 번째 방법은 없는 (보통) 의 마지막 색인에서 되돌려줍니다 어레이이며 동일한 배열 크기.
첫째, 두 번째는 다른 두 개의 동등한 없습니다. '$ # 어레이입니다' 의 마지막 색인에서 되돌려줍니다 어레이이며 원하는거요 보다 1) 의 크기는 어레이입니다.
나머지 2 개는 거의 동일합니다. 두 가지 방법을 사용하여 간단히 스칼라 컨텍스트로 만들 수 있습니다. 이 질문에 대한 완료되니라 다운되어도 가독성을.
개인적으로 포지셔닝하십시오 다음과 같습니다.
보다 내가 찾을 수 있습니다.
및
후자의 매우 분명하게 보이는 것을 알 수 있지만, 내가 이렇게 혼자 떨어져 추가 줄 때 기타 코드 부분을 명료하게 걸립니다. # 39 의 it& 뭐라구오 @array 스칼라 컨텍스트로, 그리고 아마도 가르치는 데 유용한 '가' '두 번 이상 사용할 경우 $ size.
이를 통해 이 크기를 가져옵니다 강요하는 어레이입니다 붙여넣습니다 스칼라 컨텍스트로 검사됩니다 그 크기:
이는 또 다른 방법은 강요하는 어레이입니다 붙여넣습니다 it& # 39 의 스칼라 컨텍스트로, 이후 대입된 기술입니까 스칼라 변수:
이 마지막 요소에 어레이입니다 it& 색인입니다 가져옵니다 # 39 의 크기 때문에 사실상 마이너스 1 사용한다고 가정할 때 indexe 0 에 시작, 이는 일반적으로 Perl 로 조정성 언로드하기 있지만 안 좋은 생각):
39 마지막 한 isn&, 정말 좋은 배열 크기 얻기 위해 사용할 수 없다. 마지막 요소에 어레이입니다 내려받습니다 싶은 경우 도움이 될 것이라고 말했다.
또한, 여기서 알 수 있듯이, 이 t # 39 의 Stack& chunghwa isn&, 대부분의 구문을 기준으로 올바르게 사용할 수 있을 만큼, 오버플로입니다 처리됩니까 형광펜.
두 번째 방법은 사용할 수 있는 추가 1:
만약 우리가 모든 것을 동일한 결과를 3 번째 수정하십시오 조금.
예:
이 ["Perl 가변으로 유형은상위" 섹션을] [4] 의 펄리나로 문서용으로 map_layer
>. 특수 변수 '를 소개합니다' $ # 어레이입니다 색인입니다 마지막 요소를 배열.
>. 인쇄하십시오 혼합됨 $ ($ # 혼합됨]; # 마지막 요소, 인쇄 1.23
>. 나는 '$ # 어레이입니다 + 1' 을 말할 수 있습니다 사용할 수 있는 몇 가지 항목을 어레이입니다. 아 됐어 스칼라 값을 사용하여 @array '펄' 로 변신할 수 있는 찾을 수 있을 것으로 보고 있다. ("in 스칼라 컨텍스트로") 의 요소 수를 어레이입니다 부여하느뇨 있습니다.
>. if (@animals <. 5) {. }
또한 이 닫히지만 이 펄다타 문서용으로 의 ["스칼라 값" 섹션을] [2].
>. 스칼라 컨텍스트로, it 의 경우 어레이에서는 평가하십시오 되돌려줍니다 길이는 어레이입니다. (참고로 이 그렇지 않은 목록, 어떤 반품하십시오 마지막 값 같은 캜 쉼표 연산자, 않으며, 그들은 다시 느낄 수 있는 기능을 내장한 있는모든 반품하십시오.) 다음 사실이 항상:
>. 스칼라 (@whatever) = $ # 있는모든 + 1.
>. 를 사용할 수 있는 변환 등 일부 프로그래머가 명시성 남겨두십시오 의심의 여지가 없다.
>. = $ element_count 스칼라 (@whatever);
이에 앞서 같은 섹션을 어떻게 문서를 얻을 수 있는 마지막 요소점 색인입니다 어레이입니다.
>. 디스테이징하는 어레이에서는 는 스칼라 값. '평가' 에서 $ # @days 디스테이징하는 어레이입니다 알 수 있습니다 '일' 같이 'csh'. 하지만 여긴 길이는 스토리지였습니다. 이것이 바로 아래 첨자 마지막 요소, 즉 다른 값을 있기 때문에 일반적으로 한 0th 요소.
[2]: http://perldoc.perl.org/perldata.html # 스칼라 값을
[4]: http://perldoc.perl.org/perlintro.html # 펄은 변수 유형
1, [펄다타] 에서 펄독 안전하다고 하는 쿼트에:
>. 다음 사실이 항상: >. >. 스칼라 (@whatever) = $ # 있는모든 + 1.
Long as you $ # # 39, t don& 너무 크기 또는 dell. whatever++ 및 신기하게도 증가되지는 어레이입니다.
>. 이 어레이에는 지수가 0 로 시작합니다.
및
>. 어레이에서는 아무것도아니야 할당하여 nulll 목록 () 자를 수 있습니다 down to it. 다음 동일합니다. >. >. @whatever = (); >. $ # 있는모든 = - 1.
어떤 이는 감지할 수 있는 방법을 찾고 있었어요 나를 누구이뇨 어레이입니다 비워집니다. 내가 찾은 경우 $ # 빈 = - 1.
여러 가지 방법으로 크기를 인쇄하려면 어레이입니다. 다음은 모든 의미. = (3.4), '는' 내 @arr lionbridge 어레이입니다 말할 수 있습니다.
방법 1. 스칼라
이것이 옳은 방법은 크기를 배열입니다.
방법 2: 색인 번호임
'마지막' $ # 도착 보기입니다 색인입니다 어레이에서는. 만일 어레이입니다 그 크기는 10 의 마지막 색인에서 약간만이라도 9.
여기서 우리는 감안할 때 추가 1 로 어레이입니다 0-indexed . 그러나 그 후 이 논리를 페일오버됩니다 , 않을 경우 제로 기반.
예를 들어, 6 위) 가 없었기 때문에 초기 인덱스화할 설정되었습니다 4gbit/s. 이제 약간만이라도 인덱스화할 요소와 3 및 4, 5 ~ 6 개를 기록했다.
방법 3.
그 때 사용되는 스칼라, 배열 크기 어레이입니다 되돌려줍니다 컨텍스트로
실제로 방법 3 및 방법 1 같습니다.
Int (@array) '로' 어쩌고 때문에 쓰리트 인수는 불가능하다.
Com/go/downloads_kr 어레이에서는 크기를 사용하여 '스칼라' 키워드:
알 수 없다 '의 마지막 색인에서 어레이에서는 $ #' (펄 (perl) 의 기본 variable). 이를 통해 마지막 색인입니다 어레이에서는. 표시됨과 어레이입니다 0mb 시작, we get $ # 크기를 어레이입니다 추가하여 '':
예:
출력: