当前位置: 首页 > 工具软件 > Switcheroo > 使用案例 >

C#练习题答案: Switcheroo【难度:1级】--景越C#经典编程题库,1000道C#基础练习题等你来挑战

杨宏儒
2023-12-01

Switcheroo【难度:1级】:

答案1:

public class Kata
{
  public static string Switcheroo(string x)
  {
    return x.Replace("a","d").Replace("b","a").Replace("d","b");
  }
}​

答案2:

public class Kata
{
  public static string Switcheroo(string x)
  {
    return x.Replace('a','d')
            .Replace('b','a')
            .Replace('d','b');
  }
}​

答案3:

using System;
using System.Linq;


public class Kata
{
  public static string Switcheroo(string x)
  { 
       var s = x.Select(c=> c == 'a' ? 'b' : (c=='b' ? 'a' : c)).ToArray();
        return new String(s);
  }
}​

答案4:

public class Kata
{
  public static string Switcheroo(string x)
  {
    
    var letters = x.ToCharArray();
    for (int i = 0; i < letters.Length; i++)
    {
      if (letters[i] == 'a' )
        letters[i] = 'b';
      else if (letters[i] == 'b')
        letters[i] =  'a';
    }
    
    return new string(letters);
  }
}​

答案5:

public class Kata
{
  public static string Switcheroo(string x)
  {
    var charArray = x.ToCharArray();
    for(int i = 0; i < charArray.Length; i++)
    {
      if(charArray[i] == 'a')
        charArray[i] = 'b';
      else if(charArray[i] == 'b')
        charArray[i] = 'a';
    }
    return new string(charArray);
  }
}​

答案6:

using System.Linq;

public class Kata
{
  public static string Switcheroo(string x)
  {
    return  x.Replace("a","B").Replace("b","a").ToLower();
  }
}​

答案7:

using System.Linq;

public class Kata
{
  public static string Switcheroo(string x)
  {
    return string.Concat(x.Select(c => c == 'a' ? 'b': c == 'b'? 'a' : c));
  }
}​

答案8:

using System.Text;
public class Kata
{
  public static string Switcheroo(string x)
  {
    // return x.Replace('a', '∞').Replace('b', 'a').Replace('∞', 'b'); One liner seems about 100 ms slower for these test cases :)
    StringBuilder result = new StringBuilder();
    foreach (char c in x) { result.Append(c == 'a' ? 'b' : c == 'b' ? 'a' : c); }
    return result.ToString();
  }
}​

答案9:

public class Kata
{
  public static string Switcheroo(string x)
  {
    return x.Replace('a','e').Replace('b','a').Replace('e','b');
  }
}​

答案10:

using System;

public class Kata
{
    public static string Switcheroo(string x)
    {
        var result = "";

        foreach (var val in x)
        {
            if (val == 'a')
            {
                result += val.ToString().Replace("a", "b");
            }

            if (val == 'b')
            {
                result += val.ToString().Replace("b", "a");
            }

            if (val != 'a' &amp;&amp; val != 'b')
            {
                result += val.ToString();
            }
        }

        return result;
    }
}​

答案11:

public class Kata
{
  public static string Switcheroo(string x)
  {
    string ans = "";
    foreach(char letter in x)
    {
      if(letter == 'a')
      {
        ans += 'b';
      }
      else if(letter == 'b')
      {
        ans += 'a';
      }
      else
      {
        ans += letter;
      }
    }
    return ans;
  }
}​

 类似资料: