怎样将字符数组中的各个元素(每个元素都是一个字符串)按第一个字母的ASCLL值从小到大排序?我下面的程序是参考整形数组实现的(用直接插入排序),但运行不了,怎么办呢?
namespace SortStringArray
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
string[] myStrArr=new string[] {"evening","delete","command","bitArray","arrayList"};
SortStringArray.sortStrArr(myStrArr);
Console.WriteLine("执行的结果是:");
for(int i=0;i<myStrArr.Length;i++)
{
Console.WriteLine(myStrArr[i]);
}
}
} //自定义一个字符数组排序类
class SortStringArray
{
public static void sortStrArr(string[] strArr)
{
for(int i=1;i<strArr.Length;i++)
{
string tmpStr=strArr[i];
int j=i;
while((j>0) && ((int)strArr[j-1].Substring(1,1)>(int)strArr[j].Substring(1,1)))--------①
{
strArr[j]=strArr[j-1];
--j;
}
strArr[j]=tmpStr;
} }
}
}执行到①句时提示: 无法将类型“string”转换为“int”
请问该怎样改程序,才能显现按字符数组中每个元素(每个元素都是一个字符串)的第一个字母的ASCLL值从小到大排序?
namespace SortStringArray
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
string[] myStrArr=new string[] {"evening","delete","command","bitArray","arrayList"};
SortStringArray.sortStrArr(myStrArr);
Console.WriteLine("执行的结果是:");
for(int i=0;i<myStrArr.Length;i++)
{
Console.WriteLine(myStrArr[i]);
}
}
} //自定义一个字符数组排序类
class SortStringArray
{
public static void sortStrArr(string[] strArr)
{
for(int i=1;i<strArr.Length;i++)
{
string tmpStr=strArr[i];
int j=i;
while((j>0) && ((int)strArr[j-1].Substring(1,1)>(int)strArr[j].Substring(1,1)))--------①
{
strArr[j]=strArr[j-1];
--j;
}
strArr[j]=tmpStr;
} }
}
}执行到①句时提示: 无法将类型“string”转换为“int”
请问该怎样改程序,才能显现按字符数组中每个元素(每个元素都是一个字符串)的第一个字母的ASCLL值从小到大排序?
解决方案 »
- 关于C/S模式的软件怎样部署的问题。
- 紧急求助.用C#开发得winform程序,连不上数据库,需求帮助.
- 怎么给自己的控件添加自定义的事件
- 如何把带有索引像素的图片黑白化
- 水晶报表能实现这样的功能吗
- winform 多个 datagridview 导出到excel 不同的sheet
- 问个listview相关问题,很简单的可惜我就是不会啊
- 求助大神:web中的activex控件不能从ftp服务器下载数据
- 请问如何将datagrid(window和web中的)的一列固定显示行号,不因为排序而变化?
- 命名空间以及命名空间支持平台一览表,如果感觉好的话请捧场!!!
- 同一解决方案不同项目的两个窗体产生的问题
- 磁盘检测
你可以用convert.toint32试试
我是对数组中的相邻的两个元素(每个元素都是一个字符串)比较大小呀,这个怎样实现呢?