一道C#练习题~~~
编写一个类,其中包含一个排序的方法Sort(),对输入的信息做判断,如果是一串整数从小到大的顺序输出,如果是一个字符串,就将字符串反序输出。PS:能用泛型的最好(初学,有...
编写一个类,其中包含一个排序的方法Sort(),对输入的信息做判断,如果是一串整数从小到大的顺序输出,如果是一个字符串,就将字符串反序输出。PS:能用泛型的最好(初学,有点迷茫)!
1楼: 写的有点乱,还有“结果 = new string(str.ToCharArray().Reverse().ToArray());”这个里面ToCharArray()这个方法实现不了
2楼 : string ss = new string(chr);这个是什么(还有这种实例吗?)
还有你的是静态方法,那还用实例吗,不是直接用类名.静态方法就能调用了吗?
Reverse()这报错了~~~说Reverse方法没有采用0个参数的重载 一个T型的怎么重载啊??
希望两位甚谨点,帮帮我 我又加了5分 ~~~ 展开
1楼: 写的有点乱,还有“结果 = new string(str.ToCharArray().Reverse().ToArray());”这个里面ToCharArray()这个方法实现不了
2楼 : string ss = new string(chr);这个是什么(还有这种实例吗?)
还有你的是静态方法,那还用实例吗,不是直接用类名.静态方法就能调用了吗?
Reverse()这报错了~~~说Reverse方法没有采用0个参数的重载 一个T型的怎么重载啊??
希望两位甚谨点,帮帮我 我又加了5分 ~~~ 展开
2个回答
展开全部
调用: Sorter<string >.Sort("dcba");
Console.ReadLine();
public class Sorter<T>
{
public static void Sort(T s)
{
if (s is int)
{
char[] chr;
Array.Sort( chr=s.ToString().ToCharArray()) ;
string ss = new string(chr);
foreach (char item in ss)
{
Console.WriteLine(item);
}
}
else if(s is string)
{
string ss = new string( s.ToString().ToCharArray().Reverse().ToArray());
foreach (char item in ss)
{
Console.WriteLine(item);
}
}
}
}
Console.ReadLine();
public class Sorter<T>
{
public static void Sort(T s)
{
if (s is int)
{
char[] chr;
Array.Sort( chr=s.ToString().ToCharArray()) ;
string ss = new string(chr);
foreach (char item in ss)
{
Console.WriteLine(item);
}
}
else if(s is string)
{
string ss = new string( s.ToString().ToCharArray().Reverse().ToArray());
foreach (char item in ss)
{
Console.WriteLine(item);
}
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询