我正在尝试从一个带字符串的方法返回两个Chars。假设方法收到单词“Hello”,我想返回第一个和最后一个字母= ho。我已经创建了一个接受字符串并返回一个char的方法。但我不知道如何返回两个。
答案 0 :(得分:2)
您可以返回char [] - 字符数组。
方法签名将如下所示:
public static char[] GetFirstAndLastChars(string input)
{
var result = new char[2];
//your code to take first and last letters
result[0] = inputString.FirstOrDefault();
result[1] = inputString.LastOrDefault();
return result;
}
如其他答案中所述,如果经常使用,您可以将其转换为扩展方法。
答案 1 :(得分:2)
使用返回$string = "1:54,3:54,3:88,7:234,4:344,1:54,76:12,1:54";
$arr = explode(",", $string);
$users = 0;
$sales = 0;
foreach($arr as $pair)
{
$pairarr = explode(":", $pair);
$users += intval($pairarr[0]);
$sales += intval($pairarr[1]);
}
echo "There are {$users} Users, which made a total amount of {$sales} Sales.";
的扩展方法可以很容易地完成。
完整的例子:
char[]
这将输出:
public class Program
{
public static void Main(string[] args)
{
string myString = "abc";
var firstAndLast = myString.GetFirstAndLast();
Console.WriteLine("First: " + firstAndLast[0] + " Last: " + firstAndLast[1]);
}
}
public static class StringExtensions
{
public static char[] GetFirstAndLast(this string str)
{
return new char[2] { str.FirstOrDefault(), str.LastOrDefault() };
}
}
答案 2 :(得分:2)
您可以从输入中创建char[]
并返回char[]
的第一个和最后一个元素:
public char[] GetChars(string input)
{
char[] charArray = input.ToCharArray();
char[] result = new char[] { charArray.First(), charArray.Last() };
return result;
}
答案 3 :(得分:1)
也许你可以试试这个:
public struct Ends
{
public char Front;
public char Back;
}
public Ends GetEnds(string text)
{
return new Ends() { Front = text.First(), Back = text.Last() };
}
你显然会这样称呼:
Ends ends = GetEnds("hello");
我得到了这个结果:
答案 4 :(得分:-1)
返回包含两个字符的任何类型的数据结构。我可能会返回字符串“ho”,但您也可以返回数组或元组。