Case swapping

5009 단어 case

Case swapping


Description:


Given a string, swap the case for each of the letters.
e.g. CodEwArs --> cODeWaRS

Examples

Kata.Swap("") == "" Kata.Swap("CodeWars") == "cODEwARS" Kata.Swap("abc") == "ABC" Kata.Swap("ABC") == "abc" Kata.Swap("123235") == "123235"

 
using System;
using System.Linq;

public static class Kata 
{
 public static string Swap(string str)
        {
            return string.Join(string.Empty, str.Select(character => char.IsLower(character) ? char.ToUpper(character) : char.IsUpper(character) ? char.ToLower(character) : character));
        }

        //public static string Swap(string str)
        //{
        //    str = string.Join(string.Empty, str.Select(Selector));
        //    return str; //your code here
        //}

        //public static char Selector(char character)
        //{
        //    char tempCharacter = character;
        //    if (char.IsLower(character))
        //    {
        //        tempCharacter = char.ToUpper(character);
        //    }
        //    else if (char.IsUpper(character))
        //    {
        //        tempCharacter = char.ToLower(character);
        //    }
        //    return tempCharacter;
        //}   
}

 
다른 사람의 해법
배워야 할 것은:char.ToUpper 및char.ToLower 자체는 대소문자가 아닌 문자를 처리할 수 있으므로 별도의 판단이 필요 없음
using System;
using System.Linq;

public static class Kata {
  public static string Swap(string str) {
    return String.Concat(str.Select(c => Char.IsUpper(c) ? Char.ToLower(c) : Char.ToUpper(c)));
  }
}

좋은 웹페이지 즐겨찾기