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

如何使用.ToUpper与.ToLower实现字符串大小写互相反转

字符串大小写翻转实现方案

核心逻辑是逐字符判断大小写属性,分别调用ToUpper()/ToLower()转换后重组字符串,非字母字符保持原有状态不变。

基础通用实现

兼容所有.NET版本,性能最优:

public static string SwapStringCase(string input)
{
    // 空值直接返回避免报错
    if (string.IsNullOrEmpty(input))
        return input;
        
    char[] chars = input.ToCharArray();
    for (int i = 0; i < chars.Length; i++)
    {
        if (char.IsLower(chars[i]))
        {
            chars[i] = char.ToUpper(chars[i]);
        }
        else if (char.IsUpper(chars[i]))
        {
            chars[i] = char.ToLower(chars[i]);
        }
    }
    return new string(chars);
}

简化版写法(LINQ)

适合.NET Core 3.0及以上版本,代码更简洁:

using System.Linq;

public static string SwapStringCase(string input)
{
    return string.IsNullOrEmpty(input) 
        ? input 
        : new string(input.Select(c => 
            char.IsLower(c) ? char.ToUpper(c) : 
            char.IsUpper(c) ? char.ToLower(c) : c
        ).ToArray());
}

效果验证

对应示例测试结果如下:

  • 输入: hello WORLD → 输出: HELLO world
  • 输入: THIS is A TEST → 输出: this IS a test

提示:如果需要处理特定文化的大小写转换,可以替换为ToUpperInvariant()/ToLowerInvariant()方法避免文化差异导致的转换异常。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 22:06:03