Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

241
Vistas
Implement code after convert Java to Kotlin error

I already try to found if this problem was here on StackoverFlow, before I came here. I am try to convert a Java class to Kotlin but Android Studio does not do it very well.

I try to do it manually but not success.

This is the original code in Java

    private static void appendHex(StringBuffer sb, byte b) {
        sb.append(HEX.charAt((b >> 4) & 0x0f)).append(HEX.charAt(b & 0x0f));
    }

here is the code converted by Android Studio

    private fun appendHex(sb: StringBuffer, b: Byte) {
        sb.append(HEX[b shr 4 and 0x0f]).append(HEX[b and 0x0f])
    }

the error is after convert, Android Studio does not recognize shr & and, when I press ALT+ENTER it shows a popup to Create extension function Byte.shr and after press enter, it create a this private fun:

private infix fun Byte.shr(i: Int): Any {
    TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}

the same to and but now on popup it has an Import option that point to import kotlin.experimental.and or create private fun:

private infix fun Any.and(i: Int): Int {
    TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
}

after do this and run my app the class is not working with message An operation is not implemented: not implemented

How to implement this to work?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

You can use the operators (infix functions) shr and and for the type Int (and Long) in Kotlin.
Just change b with b.toInt():

private fun appendHex(sb: StringBuffer, b: Byte) {
    sb.append(HEX[b.toInt() shr 4 and 0x0f]).append(HEX[b.toInt() and 0x0f])
}
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda