You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在AWS Neptune GDB的Gremlin控制台中将字符串转为整数/长整型

在AWS Neptune Gremlin控制台中转换字符串为整数/长整型

我来帮你搞定这个类型转换的问题~你之前遇到的报错,核心原因是在map步骤里直接把Traverser对象强转成了字符串或整数,但it其实是包裹着属性值的容器,得先取出里面的实际字符串值再做转换才行。

下面给你几种可行的解决方案:

1. 基础转换写法(转Integer)

用it.get()取出Traverser中的字符串值,再通过Groovy的类型转换或Java的parse方法转成整数:

// 方法1:使用Groovy的类型转换语法
g.V(1).values('age').map{ it.get() as Integer }.next()

// 方法2:使用Java的Integer.parseInt()
g.V(1).values('age').map{ Integer.parseInt(it.get()) }.next()

2. 转换为Long类型

如果你的数值范围更大,需要转成Long,写法类似:

// Groovy类型转换
g.V(1).values('age').map{ it.get() as Long }.next()

// Java的Long.parseLong()
g.V(1).values('age').map{ Long.parseLong(it.get()) }.next()

3. 结合数学运算的示例

转成数值类型后,就可以直接做加减乘除等运算了,比如给age加10:

g.V(1).values('age').map{ it.get() as Integer }.map{ it + 10 }.next()

额外注意:处理非数字字符串

如果你的age属性可能存在非数字的字符串值,直接转换会报错,可以加个判断逻辑避免异常:

g.V(1).values('age').map{ 
    def strVal = it.get()
    // 先判断是否为数字,是则转换,否则返回null或默认值
    strVal.isNumber() ? strVal as Integer : null 
}.next()

内容的提问来源于stack exchange,提问作者UKR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:50:49