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

string.Join元素顺序疑问:为何输出2019312330而非预期的3201912330?

问题原因解析

你这里的核心问题是搞混了string.Join方法的参数顺序!

先明确string.Join的工作逻辑:当你调用string.Join(分隔符, 元素1, 元素2, ...)时,它的作用是用指定的分隔符把后面所有元素依次连接起来,分隔符是插在元素与元素之间的,而不是作为前缀放在最开头。

从你的返回结果2019312330反推,当时的日期应该是2019年12月30日:

  • 你传入的分隔符是"3"
  • 待连接的元素是2019、12、30

按照方法逻辑,拼接过程是:2019 + "3" + 12 + "3" + 30,最终自然得到2019312330,这完全符合方法的设计预期。

如果你想要得到3201912330(把"3"作为前缀),就得换个写法,比如:

// 先加前缀,再拼接无分隔符的日期元素
"3" + string.Join("", DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day)

或者用更简洁的字符串插值:

$"3{DateTime.Now.Year}{DateTime.Now.Month}{DateTime.Now.Day}"

这样就能得到你想要的结果啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 09:03:07