코 틀린 학습 빠른 시작 (4) - 사용의 모음

목록, 세트,지도 모음입니다

  • 목록 요소에 액세스 할 수있는 (적분 요소의 위치를 ​​반영하는) 인덱스 순서 집합이다. 요소 목록에 여러 번 나타날 수 있습니다. 단어 목록의 한 예 : 단어의 집합, 순서는 중요한 단어이며, 말씀이 반복 될 수있다.
  • 설정은 고유 요소의 모음입니다. 비 중복 개체의 집합 : 그것은 수학적 추상화의 컬렉션 (설정)을 반영한다. 일반적으로 요소의 순서는 중요하지 않다 설정합니다. 예를 들어, 알파벳 문자 (세트)의 집합.
  • 지도 (또는 사전) 키 - 값 쌍의 집합입니다. 키는 각각의 키는 정확히 값에 매핑 고유합니다. 값이 반복 될 수있다. 맵은 오브젝트, 예를 들어, 직원 ID와 종업원 위치 사이의 논리적 연결을 저장하는데 유용하다.

컬렉션 만들기

일반적으로 빠르게 컬렉션을 만들 표준 라이브러리를 사용, listOf () SETOF () mutableListOf () mutableSetOf ()

물론, 당신은 또한 자바 생성자의 집합을 사용할 수 있습니다

val numbers = listOf(0,1,2,3,4)

빈 세트 : 빈리스트 (), emptySet ()와 emptyMap (), 당신의 유형을 지정해야

val empty = emptyList<String>()

컬렉션의 일부를 가지고

일부분

val numbers = listOf(0,1,2,3,4)
//按顺序取
println(numbers.slice(1..3))//[1,2,3]
//按步长取
println(numbers.slice(0..4 step 2))//[0,2,4]
//取指定下标
println(numbers.slice(setOf(3, 4, 0)))//[3,4,0]

N 원소는 테이크 촬영

  • 어레이 소자 N에서 받아 순차적 : INT (N)을
  • takeLast (N : INT) N 요소의 끝에서 촬영
  • , 조건을 중지 촬영 한 takeWhile {expresstion}는 만족하지
  • 뒷면에서 촬영 takeWhileLast {expresstion}, 정지 조건이 충족되지
val numbers = listOf(0,1,2,3,4)
println(numbers.take(3))//[0,1,2]
println(numbers.takeLast(3))//[2,3,4]
val numbers = listOf("one", "two", "three", "four", "five", "six")
println(numbers.takeWhile { !it.startsWith("three") })//[one,two]
println(numbers.takeLastWhile { !it.startsWith("three") })//[four, five, six]

하락

  • 드롭 (N : 지능)는 N 소자 어레이를 삭제
  • dropLast (N : INT) N 요소의 어레이 폐기 끝에
  • , 조건을 중지 손실되었습니다 dropWhile {expresstion}는 만족하지
  • dropWhileLast {expresstion}는 정지 조건을 만족하지, 뒤쪽에서 손실
val numbers = listOf(0,1,2,3,4)
println(numbers.drop(3))//[3,4]
println(numbers.dropLast(3))//[0,1]
val numbers = listOf("one", "two", "three", "four", "five", "six")
println(numbers.dropWhile { !it.startsWith("three") })//three, four, five, six
println(numbers.dropLastWhile { !it.startsWith("three") })//[one, two, three]

필터

  • 필터 요소 experssion {}를 만족하는 조건을 갖는
  • filterNot {experssion} 촬영 조건을 만족 요소하지 않습니다
  • 이 조건에있어서의 그 용도 인덱스 값의 사용을 요구하는 경우 filterIndexed {} experssion
  • filterIsInstance <타입> () 요소는 타입인지
val numbers = listOf("one", "two", "three", "four", "five", "six")
val longerThan3 = numbers.filter { it.length > 3 }
println(longerThan3)//[three,four,five]
val numbers = listOf("one", "two", "three", "four")
val filteredIdx = numbers.filterIndexed { index, s -> (index != 0) && (s.length < 5)  }
println(filteredIdx)//[two,four]
val numbers = listOf(null, 1, "two", 3.0, "four")
//这里只获得list中的String类型数据
println(numbers.filterIsInstance<String>())//[two,four]

파티션 그룹

val numbers = listOf(2,3,4,5,6)
//上一节类中说过的数据类自动解析,match是满足,rest则是不满足
val (match, rest) = numbers.partition { it%2==0}
println(match)
println(rest)

어레이 검사 조건을 충족

  • 어떤 식 {} 임의의 배열 요소는 조건이 참이 반환 만족
  • 없음 {표현}가 아닌 데이터 요소를 만족 상태가 true를 돌려주는 것입니다
  • 모든 식 {} 어레이의 모든 요소는, 조건을 만족 true를 반환
val numbers = listOf("one", "two", "three", "four")
println(numbers.any { it.endsWith("e") })
println(numbers.none { it.endsWith("a") })
println(numbers.all { it.endsWith("e") })

요소를 가지고

  • [인덱스]에서 또한 사용될 수있다
  • 수 (인덱스) 일반적인 방법
  • elementAt (색인) 새로운 방법
  • {} 제 1 구성 요소를 발견하면 찾을 조건을 만족
  • findLast는 {} 마지막 요소의 충족 조건을 찾을 수
  • 랜덤 ()는 임의을 촬영합니다

중합 작업

  • 분 () 최소
  • 최대 () 최대
  • 평균 () 평균
  • 합 () 합산
  • 카운트) (COUNT

순서

  • 종류 () 오름차순
  • 다음 sortDescending () 내림차순

참고

코 틀린 모음

추천

출처www.cnblogs.com/kexing/p/11264487.html