我需要一個方法,它返回字符串中的第一個字符開始的其他每個字符。例如,使用(「Java-language」)調用方法返回「Jv-agae」。csharp方法,從字中選擇每個第二個字符
private static void NewMethod(string word)
{
// here comes the code
}
我需要一個方法,它返回字符串中的第一個字符開始的其他每個字符。例如,使用(「Java-language」)調用方法返回「Jv-agae」。csharp方法,從字中選擇每個第二個字符
private static void NewMethod(string word)
{
// here comes the code
}
var str = "Java-language";
var xx = new string(str.Where((ch, index) => index % 2 == 0).ToArray());
Console.WriteLine(xx);
或者這一個:
var xx = string.Join<char>("", str.Where((ch, index) => (index & 1) == 0));
這是我給你的建議:
private string TakeEverySecondChar(string input)
{
var result = string.Empty;
for (int i = 0; i < input.Length; i+=2)
{
result += input.Substring(i, 1);
}
return result;
}
可能有點不同的,那麼其他人::-)
protected static IEnumerable<char> EverySecondChar(string word)
{
for(int i = 0; i < word.Length; i += 2)
yield return word[i];
}
string result = new string(EverySecondChar("Java-language").ToArray());
public String strip2ndchar(string text)
{
string final="";
int i = 0;
foreach (char a in text.ToCharArray())
{
if (i % 2 == 0)
final += a;
i++;
}
return final;
}
Console.Clear();
string Lang = "Java-language";
string[] LangArr = new string[Lang.Length];
char LangChar;
for (int i = 0; i < Lang.Length; i++)
{
LangChar = Lang[i];
LangArr[i] = LangChar.ToString();
}
for (int i = 0; i < LangArr.Length; i++)
{
Console.Write(LangArr[i]);
i++;
}
Console.ReadLine();
這是代碼優化的完美例子。 – vikky