Skocz do zawartości
Coders Lab

Konwersja java na kotlin i kotlin na java

    Rekomendowane odpowiedzi

    Czasami, tworząc aplikację używając języka kotlin, znajdujemy rozwiązanie naszego problemu napisane w javie. Nie musimy wtedy ręcznie przepisywać tego kodu do kotlina. Android Studio pomaga nam ten proces zautomatyzować. Wystarczy skopiować fragment kodu w javie i wkleić go do klasy/pliku z rozszerzeniem .kt :) IDE  zapyta się wtedy czy automatycznie przekonwertować wklejany fragment kodu:

    image.png.3c047567fbc77ab9b8e20c3d62d9f4c3.png

    Zaznaczając check boxa w tym oknie dialogowym i klikając Yes, skopiowany kod zawsze będzie konwertowany do kotlina już bez wyświetlania komunikatu.

    Możemy również przekonwertować od razu całą klasę napisaną javie. W tym celu otwieramy klasę którą chcemy poddać konwersji. Następnie wymieramy z Menu -> Code -> Convert Java File to Kotlin File. Albo używamy skrótu klawiszowego Ctrl+Alt+Shift+K
    image.png.51464deb4f04be4b78b8f31539363185.png

    Niestety często zdarza się tak, że konwersje nie są idealne. Trzeba często coś w nich poprawiać (szczególnie gdy konwertujemy całą klasę).

    Podobnie sprawa wygląda z konwersją do javy. W tym przypadku wybieramy  Menu -> Tools -> Show Kotlin Bytecode a następnie klikamy Decompile.

    image.thumb.png.fbf5f18f2e7aa6d7dbeea13a3240c0f2.png

    Na wyjściu dostaniemy plik z kodem w javie, który też należy sprawdzić. Tutaj narzędzie nie radzi sobie np. z typami zmiennych:

    // Kotlin
    val mCountDownTimer = object : CountDownTimer(millisInFuture, countDownInterval)
    
    // Java
     <undefinedtype> mCountDownTimer = new CountDownTimer(millisInFuture, this.countDownInterval)

     

    Konwersja na dzień dzisiejszy nie działa jeszcze idealnie. Jednak jest to ciekawe narzędzie, które może nam trochę pomóc nauce składni, a nawet w naszej pracy.  

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

    Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

    Zarejestruj nowe konto

    Załóż nowe konto. To bardzo proste!

    Zarejestruj się

    Zaloguj się

    Posiadasz już konto? Zaloguj się poniżej.

    Zaloguj się

    • Ostatnio przeglądający   0 użytkowników

      Brak zarejestrowanych użytkowników przeglądających tę stronę.

    x