Latest web development tutorials

스칼라 반복자 (반복자)

스칼라 컬렉션 스칼라 컬렉션

스칼라 반복자 (반복자)이 컬렉션에 액세스하는 방법이다, 수집하지 않습니다.

두 가지 기본 동작은다음과 다음 hasNext입니다 반복자.

() it.next를 호출 다음 요소로 반복자를 반환하고, 반복자 상태를 업데이트합니다.

it.hasNext ()를 호출하는 컬렉션의 요소가 있는지 여부를 검출하기 위해 사용된다.

반복자는 가장 쉬운 방법은 while 루프를 사용하는 하나의 모든 요소를 ​​반환합니다 :

object Test {
   def main(args: Array[String]) {
      val it = Iterator("Baidu", "Google", "w3big", "Taobao")
      
      while (it.hasNext){
         println(it.next())
      }
   }
}

위의 코드의 구현, 출력은 :

$ scalac Test.scala 
$ scala Test
Baidu
Google
w3big
Taobao

최대 및 최소 요소를 찾기

다음과 같이 반복자의 최대 및 최소 요소를 찾을 수it.min 및 it.max방법을 사용할 수 있습니다, 예는 다음과 같습니다

object Test {
   def main(args: Array[String]) {
      val ita = Iterator(20,40,2,50,69, 90)
      val itb = Iterator(20,40,2,50,69, 90)
      
      println("最大元素是:" + ita.max )
      println("最小元素是:" + itb.min )

   }
}

위의 코드의 구현, 출력은 :

$ scalac Test.scala 
$ scala Test
最大元素是:90
最小元素是:2

반복자의 길이를 가져옵니다

당신은 반복자의 요소 수를 볼 수it.size 또는 it.length방법을 사용할 수 있습니다. 다음 예는 다음과 같다 :

object Test {
   def main(args: Array[String]) {
      val ita = Iterator(20,40,2,50,69, 90)
      val itb = Iterator(20,40,2,50,69, 90)
      
      println("ita.size 的值: " + ita.size )
      println("itb.length 的值: " + itb.length )

   }
}

위의 코드의 구현, 출력은 :

$ scalac Test.scala 
$ scala Test
ita.size 的值: 6
itb.length 的值: 6

스칼라 반복자 일반적인 방법

다음 표는 스칼라 반복자 일반적인 방법을 보여줍니다

아니오. 방법 및 설명
(1)

데프 다음 hasNext : 부울

리턴 될 수있는 요소가있는 경우 true를 반환한다.

데프 다음 () :

반복자의 다음 요소를 반환하고, 반복자의 상태를 업데이트

3

데프 ++ (즉, => 반복자 [A]) : 반복자 [A]

이 반복자 병합

4

데프 ++ [B> : A] (즉, => GenTraversableOnce [B]) : 반복자 [B]

이 반복자 병합

(5)

데프 addString (B : 모두 StringBuilder) 의 StringBuilder

B를 모두 StringBuilder에 문자열을 추가

6

데프 addString (B : 모두 StringBuilder 9 월 : 문자열) : 모두 StringBuilder

모두 StringBuilder B에 문자열을 추가하고 구분 기호를 지정

(7)

데프 버퍼 : BufferedIterator [A]

반복자는 BufferedIterator로 변환

8

데프는 (: 모든 ELEM를) 포함 부울

반복자의 감지기는 특정 요소를 포함

9

데프 copyToArray (XS : 배열 [A ], 시작 : 지능, 렌 : INT) : 단위

반복자 선택한 값 배열로 전달된다

(10)

(: (A) P 데프 계산 => 부울) : 지능을

반복자 요소 요소의 갯수가 상기 조건을 만족 P 돌려.

(11)

데프 드롭 (n은 INT) : 반복자 [A]

반환 파기 n 개의 요소 전에 새 컬렉션

(12)

데프 dropWhile (P (A) => 부울) : 반복자 [A]

조건을 만족하는 p가 아니다까지 폐기 요소는 좌우

(13)

데프 복제 (반복자 [A] , 반복자 [A])

두 반환 모든 요소의 반복자 반복자를 생성 할 수 있었다.

(14)

(: (A) P 데프 존재 => 부울) : 부울

이는 반복기 소자 P 개의 엘리먼트를 충족하기 위해 존재하는지 여부를 나타내는 부울 값을 반환한다.

(15)

(: (A) P 데프 필터링 => 부울) : Iterator를 [A]

(p)의 조건을 충족하는 모든 요소에 새로운 반복자 반복자 요소를 돌려줍니다.

(16)

데프 filterNot (P (A) => 부울) : 반복자 [A]

조건 페이지 요소를 만족하지 않는 반복자 반복자의 요소를 돌려줍니다.

(17)

(: (A) P 데프 찾을 수 => 부울) : 옵션을 [A]

p 또는 없음을 만족하는 첫 번째 요소를 돌려줍니다. 주 : 소자의 상태가 발견되면, 반복기가 소자 뒤에 배치 될 것이다없는 경우, 단부에 위치한다.

(18)

DEF flatMap [B] (F : (A) => GenTraversableOnce [B]) 반복자 [B]

반복자는 시퀀스의 함수 f의 각 요소에 적용하고, 그 결과 순서 반복자에 포인터를 반환하십시오.

(19)

데프 FORALL (P (A) => 부울) : 부울

그것은 요소가 페이지를 만족에 의미 있는지 여부를 나타내는 부울 값을 반환합니다.

(20)

데프 foreach는 (F : (A) => 단위) : 단위

반복자 프로그램 F에 의해 반환 된 각 요소에 지정된 수행

(21)

데프 hasDefiniteSize : 부울

유한 요소 반복자의 개수가 true를 돌려주는 경우 (기본값은 IsEmpty 함수에 해당합니다)

(22)

데프 같이 IndexOf (ELEM : B) : 지능

인덱스의 요소의 반복자를 반환하는 x의 첫 번째 요소와 동일하다. 참고 : 반복자는이 요소를 교차합니다.

(23)

데프 indexWhere (P (A) => 부울) : 지능

조건의 페이지 요소를 충족시킬 수있는 인덱스의 요소의 반복자를 돌려줍니다. 참고 : 반복자는이 요소를 교차합니다.

(24)

데프 IsEmpty 함수 : 부울

비어, 비어 반환에 해당하는 경우, 그렇지 않으면 거짓 (다음 hasNext의 반대를) 반환 확인합니다.

(25)

데프 isTraversableAgain : 부울

시험은이 반복자는 반복 통과 할 수 있는지 여부.

(26)

데프 길이 : 지능

반복자의 요소의 수를 돌려줍니다.

(27)

DEF 맵 [B] (F : (A) => B) 반복자 [B]

그것은 각 요소의 함수 f로 전달 된 후, 그 결과는 새로운 반복자를 생성한다.

(28)

데프 최대하십시오

반복자 반복자 요소 최대의 요소를 돌려줍니다.

(29)

데프 분하십시오

가장 작은 요소의 반복자 반복자의 요소를 돌려줍니다.

(30)

데프 된 mkString : 문자열

모든 요소는 문자열로 반복자를 변환합니다.

(31)

데프 된 mkString (9월 : 문자열) : 문자열

모든 요소는 문자열로 반복자를 변환하고, 구분 기호를 지정합니다.

(32)

데프 비어 있지 않은 : 부울

컨테이너 요소 (다음 hasNext에 해당)가 포함되어 있는지 확인합니다.

(33)

데프 padTo (렌 : 지능, ELEM : A) : 반복자 [A]

모든 요소의 첫 번째 반복자를 반환, 길이까지 ELEM의 추가 사본 렌은 도달한다.

(34)

(부터 : 지능, patchElems 데프 패치 : 반복자 [B], 대체 : INT) : 반복자 [B]

처음부터 첫 번째 요소의 요소가 반복자의 의미 내에서 요소로 대체 ​​할 대체 새로운 반복자를 돌려줍니다.

(35)

데프 제품 :

숫자 요소의 반복자의 의미 내에서 제품을 돌려줍니다.

(36)

데프 sameElements (즉 : 반복자 [_ ]) : 부울

차례에 지정된 반복자와 반복자 매개 변수를 분석하면 같은 요소를 반환

(37)

데프 서열 : 반복자 [A]

컬렉션 시리즈의 다시보기

(38)

데프 크기 : 지능

반복자의 요소의 수를 돌려줍니다

(39)

(:까지 지능에서 데프 조각 : 지능) : 반복자 [A]

반복자 요소까지 처음으로 끝에서 첫 번째 요소에 처음부터 순서 단편 가리키는 새로운 반복자를 돌려줍니다.

(40)

데프 합계하십시오

숫자 요소를 참조하는 반복자를 돌려줍니다

(41)

(: 지능 N) : 데프 걸릴 Iterator를 [A]

새로운 반복자 처음 n 요소를 돌려줍니다.

(42)

데프으로써 toArray : 배열 [A]

모든 요소의 반복자는 배열 반환으로 가리키는.

(43)

데프 toBuffer : 버퍼 [B]

모든 요소의 반복자는 복사 버퍼 버퍼를 가리키고 있습니다.

(44)

데프 toIterable :의 Iterable [A]

이에 이동 반복자의 모든 요소를 ​​포함하는의 Iterable.이 무한 반복자에 대한 종료되지 않습니다 돌려줍니다.

(45)

데프 toIterator : 반복자 [A]

모든 요소는 용기에 반복자 반복자 반환.

(46)

데프 toList :리스트 [A]

목록 및 반환에 반복자의 모든 요소

47

데프 toMap [T, U] : 맵 [T, U]

지도 반환에 키 반복자의 모든.

(48)

데프 toSeq 서열 [A]

서열 반환에 컨테이너에 걸쳐 모든 요소.

49

데프 toString () : 문자열

반복자는 문자열로 변환

(50)

데프 우편 [B] (즉 : 반복자 [B]) : 반복자 [(A, B)

각각 지정된 반복자에 대응하는 새로운 반복자를 가리키는 튜플의 순서를 돌아가서에서 해당 요소를 이터레이터

더 많은 방법을 참조하는 API 문서

스칼라 컬렉션 스칼라 컬렉션