Kotlin编程语言(九)——不同字符类型相互转换

Kotlin编程语言(九)——不同字符类型相互转换


在 Kotlin 中,字符类型主要包括 CharString。你可以使用多种方法在这两种类型之间进行转换。此外,还有一些方法可以将字符转换为数字或其他类型。下面是详细的转换方法和示例。

1. CharString 之间的转换

1.1 CharString
  • 使用 toString 方法
  val char: Char = 'A'
  val string: String = char.toString()
  • 使用模板字符串
  val char: Char = 'A'
  val string: String = "$char"
  • 直接拼接
  val char: Char = 'A'
  val string: String = "" + char
1.2 StringChar
  • 获取字符串的第一个字符
  val string: String = "Hello"
  val char: Char = string[0]  // 'H'
  • 获取字符串的最后一个字符
  val string: String = "Hello"
  val char: Char = string[string.length - 1]  // 'o'

2. 字符和数字之间的转换

2.1 CharInt
  • 使用 toInt 方法
  val char: Char = '5'
  val int: Int = char.toInt()  // ASCII 值,例如 '5' 的 ASCII 值是 53
  • 转换为数字值
  val char: Char = '5'
  val digit: Int = char - '0'  // 5
2.2 IntChar
  • 使用 toChar 方法
  val int: Int = 65
  val char: Char = int.toChar()  // 'A'

3. 字符串和数字之间的转换

3.1 StringInt
  • 使用 toInt 方法
  val string: String = "123"
  val int: Int = string.toInt()  // 123
  • 处理异常
  val string: String = "123"
  val int: Int? = try {
      string.toInt()
  } catch (e: NumberFormatException) {
      null
  }
3.2 IntString
  • 使用 toString 方法
  val int: Int = 123
  val string: String = int.toString()
  • 使用模板字符串
  val int: Int = 123
  val string: String = "$int"

4. 字符串和字符数组之间的转换

4.1 StringCharArray
  • 使用 toCharArray 方法
  val string: String = "Hello"
  val charArray: CharArray = string.toCharArray()
4.2 CharArrayString
  • 使用 String 构造函数
  val charArray: CharArray = charArrayOf('H', 'e', 'l', 'l', 'o')
  val string: String = String(charArray)

示例代码

fun main() {
    // Char 转 String
    val char: Char = 'A'
    val string1: String = char.toString()
    val string2: String = "$char"
    val string3: String = "" + char
    println(string1)  // 输出: A
    println(string2)  // 输出: A
    println(string3)  // 输出: A

    // String 转 Char
    val string: String = "Hello"
    val char1: Char = string[0]  // 'H'
    val char2: Char = string[string.length - 1]  // 'o'
    println(char1)  // 输出: H
    println(char2)  // 输出: o

    // Char 转 Int
    val char3: Char = '5'
    val int1: Int = char3.toInt()  // ASCII 值,例如 '5' 的 ASCII 值是 53
    val digit1: Int = char3 - '0'  // 5
    println(int1)  // 输出: 53
    println(digit1)  // 输出: 5

    // Int 转 Char
    val int2: Int = 65
    val char4: Char = int2.toChar()  // 'A'
    println(char4)  // 输出: A

    // String 转 Int
    val string4: String = "123"
    val int3: Int = string4.toInt()  // 123
    println(int3)  // 输出: 123

    // Int 转 String
    val int4: Int = 123
    val string5: String = int4.toString()
    val string6: String = "$int4"
    println(string5)  // 输出: 123
    println(string6)  // 输出: 123

    // String 转 CharArray
    val string7: String = "Hello"
    val charArray: CharArray = string7.toCharArray()
    println(charArray.contentToString())  // 输出: [H, e, l, l, o]

    // CharArray 转 String
    val charArray2: CharArray = charArrayOf('H', 'e', 'l', 'l', 'o')
    val string8: String = String(charArray2)
    println(string8)  // 输出: Hello
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值