ワンクリックで
cangjie-std-convert
仓颉标准库 std.convert 常用类型转换操作。当需要将字符串解析为基础类型(整数、浮点、布尔等),或将整数在不同进制间转换时,应使用此 Skill。涉及 Parsable 和 RadixConvertible 接口。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
仓颉标准库 std.convert 常用类型转换操作。当需要将字符串解析为基础类型(整数、浮点、布尔等),或将整数在不同进制间转换时,应使用此 Skill。涉及 Parsable 和 RadixConvertible 接口。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | cangjie-std-convert |
| description | 仓颉标准库 std.convert 常用类型转换操作。当需要将字符串解析为基础类型(整数、浮点、布尔等),或将整数在不同进制间转换时,应使用此 Skill。涉及 Parsable 和 RadixConvertible 接口。 |
导入:
import std.convert.*
public interface Parsable<T> {
static func parse(value: String): T // 失败抛 IllegalArgumentException
static func tryParse(value: String): Option<T> // 失败返回 None
}
Bool, Rune, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Float16, Float32, Float64
import std.convert.*
main() {
// parse — 失败抛异常
let n = Int64.parse("12345") // 12345
let f = Float64.parse("3.14") // 3.140000
let b = Bool.parse("true") // true
let c = Rune.parse("'a'") // a
// tryParse — 失败返回 None,安全转换
let r1 = Int32.tryParse("abc") // None
let r2 = Int32.tryParse("42") // Some(42)
// 配合模式匹配使用
match (Int64.tryParse(userInput)) {
case Some(v) => println("解析成功: ${v}")
case None => println("无效输入")
}
}
注意:浮点数解析暂不支持二进制和八进制格式。Rune 解析需要带引号,如
"'a'"。
public interface RadixConvertible<T> {
static func parse(value: String, radix!: Int64): T
static func tryParse(value: String, radix!: Int64): Option<T>
func toString(radix!: Int64): String
}
Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64
radix 范围:2 ~ 36(10 个数字 + 26 个字母)+/- 前缀;UInt 系列不允许 - 前缀toString 输出使用小写字母import std.convert.*
main() {
// 从指定进制字符串解析
let hex = Int64.parse("FF", radix: 16) // 255
let bin = Int64.parse("1010", radix: 2) // 10
let oct = UInt32.parse("77", radix: 8) // 63
// 安全解析
let r = Int64.tryParse("GG", radix: 16) // None
// 转换为指定进制字符串
let n: Int64 = 255
println(n.toString(radix: 16)) // "ff"
println(n.toString(radix: 2)) // "11111111"
println(n.toString(radix: 8)) // "377"
// 36 进制
println(Int64.parse("z", radix: 36)) // 35
let big: Int64 = 35
println(big.toString(radix: 36)) // "z"
}
import std.convert.*
main() {
// 1. 安全解析用户输入
let input = "100"
if (let Some(v) <- Int64.tryParse(input)) {
println("数值: ${v}")
}
// 2. 十六进制字符串 <-> 整数互转
let addr = UInt64.parse("DEADBEEF", radix: 16)
println(addr.toString(radix: 16)) // "deadbeef"
// 3. 二进制位表示
let flags: Int32 = 13
println(flags.toString(radix: 2)) // "1101"
// 4. 字符串转浮点
let pi = Float64.parse("3.14159265358979")
println(pi) // 3.141593
}
当需要构建鸿蒙应用项目时,使用此 Skill 执行构建流程。此 Skill 包含完整的构建命令、构建流程说明、构建失败处理流程。构建脚本会自动执行依赖安装、仓颉预编译、资源生成、编译、打包等步骤。
在鸿蒙应用(Cangjie)开发中,当需要使用 stdx 拓展库(如 crypto、encoding、net、log、actors 等),或在构建/链接阶段出现 stdx 相关错误时,使用此 Skill 获取/解压 stdx 包,并指导在 entry/cjpm.toml 中正确配置 bin-dependencies.path-option。
在进行仓颉工程或鸿蒙应用开发时的第一步,应该优先读取该SKILL,用来确定后续的开发步骤。
仓颉语言内置注解。当需要了解仓颉 SDK 提供的内置注解(@sourcePackage/@sourceFile/@sourceLine/@When/@FastNative/@Frozen/@Attribute/@Deprecated)的用途、语法和最优实践时,应使用此 Skill。
仓颉语言附录参考。当需要查阅仓颉语言的关键字列表、运算符优先级与结合性、运算符重载函数签名、运行时环境变量配置、包兼容性规则、TokenKind枚举类型时,应使用此 Skill。
仓颉标准库 Array 类型详细指南。当需要了解 Array 的构造、元素访问、切片、拼接、查找、排序、拷贝、反转、映射、扁平化等操作的完整 API 和用法时,应使用此 Skill。