ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Pair,Triple 클래스
    Android 2024. 3. 15. 21:05

    두 개 이상의 데이터를 포함하는 값을 리턴하는 클래스가 존재하는데, pair 클래스와 triple 클래스가 있다. 해당 클래스에 매개변수 값을 넣어 객체(인스턴스)를 생성하여 한번에 여러 개의 데이터를 관리할 수 있다.

    1. Pair 클래스

    명시할 때는 Pair<자료형, 자료형> , 객체를 생성할 때는 Pair(인자,인자) 이런 형태로 불러쓸 수 있다. 이미 정의되어 있는 Pair 클래스를 통해 객체를 생성하고, 그 객체는 2개의 원소를 가지고 있다. 이때, 접근은 first, second 함수를 통해 가능하다. 출력값도 (인자, 인자) 이렇게 나온다.

    fun main() {
        var noodle = Noodle()
        var noodles = noodle.getnoodle()
        println("${noodles}") // (너구리, 진라면)
        println("${noodles.first}, ${noodles.second}") // noodles.first = "너구리" | noodles.second = "진라면"
    
        var listNoodles = noodles.toList() // Pair → List 로 변환
        println("${listNoodles}") //[너구리, 진라면]
        println("${listNoodles[0]}, ${listNoodles[1]}")
    
    }
    
    class Noodle {
        fun getnoodle() : Pair<String, String> {
            var noodles = Pair("너구리","진라면")
            return noodles
        }
    }

     

    2. Triple 클래스

    fun main() {
        var yearInfo = YearInfo()
        var thisYear = yearInfo.getInfo() // Triple 클래스의 객체
        println("Triple 클래스의 객체 : ${thisYear}")
        println("1번 원소 : ${thisYear.first}, 2번 원소 : ${thisYear.second}, 3번 원소 : ${thisYear.third}")
        var yearList = thisYear.toList()
        println("List 의 객체 : ${yearList}")
        println("1번 원소 : ${yearList[0]}, 2번 원소 : ${yearList[1]}, 3번 원소 : ${yearList.get(2)}")
        // var thisYear2 = YearInfo().getInfo() // YearInfo : 클래스, YearInfo() : 해당 클래스의 객체
    }
    
    class YearInfo {
        fun getInfo() : Triple<String,String,Int> {
            var thisYear = Triple("2024년","3월",16)
            return thisYear
        }
    }
    
    /*
    Triple 클래스의 객체 : (2024년, 3월, 16)
    1번 원소 : 2024년, 2번 원소 : 3월, 3번 원소 : 16
    List 의 객체 : [2024년, 3월, 16]
    1번 원소 : 2024년, 2번 원소 : 3월, 3번 원소 : 16
    */
Designed by Tistory.