国际访客建议访问 Primers 编程伙伴 国际版站点 > Lua 教程 > tostring 以获得更好的体验。

# Lua 的 tostring 函数

请查看 Lua 标准库函数列表 了解更多相关 API。
tostring (v)

!subtitle:说明

将参数 v 转换为字符串。

  • 如果 v 的元表包含索引为 __tostring 的元方法,则以 v 为参数调用该函数

  • 否则,如果 v 的元表包含索引为 __name 的字符串,则返回该字符串和对象的 ID

!subtitle:参数

  • v - 要转换为字符串的内容

!subtitle:返回值

  • 转换为字符串后的值

# 示例

运行示例

local t = { value = 10 }

-- 定义元表,包含 __tostring
local metatable = {
    __tostring = function(v) return string.format('%q', v.value) end
}

-- 设置元表
setmetatable(t, metatable)

-- 转换
print(tostring(t))

-- 定义元表,包含 __name
metatable = {
    __name = "Custom Object"
}

-- 设置元表
setmetatable(t, metatable)

-- 转换
print(tostring(t))

# 推荐阅读

tostring - Lua 5.4 Reference Manual

本文 更新于: 2025-11-27 09:38:12 创建于: 2025-11-27 09:38:12