Find the capitals

Find the capitals

Description:

Instructions

Write a function that takes a single string (word) as argument. The function must return an ordered list containing the indexes of all capital letters in the string.

Example

Assert.AreEqual(Kata.Capitals("CodEWaRs"), new int[]{0,3,4,6});

 

复制代码
using System;
using System.Linq;

public static class Kata
{
  public static int[] Capitals(string word)
  {
    //Write your code here
    int[] array = new int[] { };
            if (word == null || word == string.Empty)
            {
                return array;
            }
            string tmp = word.ToLower();
            return Enumerable.Range(0, tmp.Length).Where(i => word[i] != tmp[i]).ToArray();
  }
}
复制代码

 

 

其他人的解法:

值得学习的是char本身自带了判断是否大写字母的函数

复制代码
using System.Collections.Generic;
using System;

public static class Kata
{
  public static int[] Capitals(string word)
  {
     var capitalIndexes = new List<int>();

      for (var i = 0; i < word.Length; i++)
      {
        if (char.IsUpper(word[i]))
          capitalIndexes.Add(i);
      }

      return capitalIndexes.ToArray();
  }
}
复制代码

 

 

 

 




作者:Chuck Lu    GitHub    
posted @   ChuckLu  阅读(261)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示