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

C#实现Concat方法按用户选择返回对应格式日期的问题

C# 日期拼接练习问题修复

原有代码错误点

你写的Concat方法存在三处核心问题:

  • 强制将所有传入的字符串转为整数,但是传入参数包含月份英文(如July),转换直接触发格式异常,逻辑无法运行
  • 变量str定义在if语句的局部作用域内,外部无法访问,代码本身无法通过编译
  • 仅适配了两个参数的场景,没有处理选项3传入三个参数的情况,无法满足需求

符合要求的修复代码

练习要求仅修改Concat方法,按照你提出的遍历拼接思路,修复后代码如下:

static string Concat(params string[] words)
{
    string output = string.Empty;
    // 遍历所有传入的参数,用空格拼接
    for (int i = 0; i < words.Length; i++)
    {
        // 非第一个元素前加空格分隔
        if (i != 0)
        {
            output += " ";
        }
        output += words[i];
    }
    return output;
}

效果验证

调用Concat方法时,不同选项已经由上层逻辑传入了对应顺序的参数:

  • 选1时传入日、月份两个参数,返回[日] [月份英文]格式
  • 选2时传入月份、年份两个参数,返回[月份英文] [年份]格式
  • 选3时传入日、月份、年份三个参数,返回[日] [月份英文] [年份]格式
    完全匹配需求,用你给出的输入示例测试,选3可直接输出预期结果1 July 2020。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 11:24:03