codePointBefore
Returns the character (Unicode code point) before the specified index.
This function delegates to java.lang.String.codePointBefore
, refer to the corresponding documentation for more details on function's behavior.
Since Kotlin
1.0Parameters
index
the index of a Char which follows a codepoint value that will be returned.
Throws
if the index is less than 1, or exceeds the length of this string.
Samples
import kotlin.test.*
import java.util.*
import java.util.regex.*
fun main() {
//sampleStart
val str = "abc"
// 'a'.code == 97
println(str.codePointBefore(1).toString()) // 97
// 'b'.code == 98
println(str.codePointBefore(2).toString()) // 98
// 'c'.code == 99
println(str.codePointBefore(3).toString()) // 99
// There are no code points prior to index 0
// str.codePointBefore(0) // will fail with IndexOutOfBoundsException
// The index is negative
// str.codePointBefore(-1) // will fail with IndexOutOfBoundsException
// The index exceeds the length of the string
// str.codePointBefore(str.length + 1) // will fail with IndexOutOfBoundsException
val broccoli = "🥦"
// 🥦 has a code point value 0x1F966 (129382 in decimal), and it is represented as a UTF-16 surrogate pair 0xD83E, 0xDD66 (or 55358, 56678 in decimal)
// Returns a code point value corresponding to the high surrogate
println(broccoli.codePointBefore(1)) // 55358
// Returns a code point value corresponding to the whole surrogate pair
println(broccoli.codePointBefore(2)) // 129382
//sampleEnd
}