How to remove trailing nulls (0) from byte array in Kotlin

1 Answer

0 votes
fun removeTrailingNulls(byteArray: ByteArray): ByteArray {
    val lastNonNullIndex = byteArray.indexOfLast { it != 0.toByte() }
    
    return if (lastNonNullIndex == -1) byteArrayOf() else byteArray.copyOfRange(0, lastNonNullIndex + 1)
}

fun main() {
    val byteArray = byteArrayOf(1, 2, 3, 0, 0, 0, 0)
    
	val trimmedArray = removeTrailingNulls(byteArray)
	
    println(trimmedArray.joinToString()) 
}

  
     
/*
run:
  
1, 2, 3
 
*/

 



answered Mar 13, 2025 by avibootz

Related questions

1 answer 162 views
2 answers 125 views
1 answer 96 views
1 answer 173 views
1 answer 94 views
2 answers 119 views
4 answers 159 views
...