2016-09-19 37 views
0

我想要做排序方法,但是我得到这个错误: IndexOutOfRangeException,行if(chars[i] > chars1[y])。量等于25排序方法c#字符串到字符

 string temp1; 
     for (int i = 0; i < amount; i++) 
     { 
      for (int y = i + 1; y < amount - 1; y++) 
      { 
       var chars = Duomenys[i].Pozicija.ToCharArray(); 
       var chars1 = Duomenys[y].Pozicija.ToCharArray(); 
       if (chars[i] > chars1[y]) 
       {............} 
+0

IndexOutOfRangeException指示i或y大于该字符串的长度。设置一个断点并检查我不大于字符的长度,并且y不大于字符1的长度。 – Kolichikov

+0

您正在设置y = i + 1。如果金额是25,则i的最后一个索引是24.在您的内部循环中,您设置y = 25; y <24; y ++ 也许不是你的问题,但那是我看到的一件事情。我不太确定非英语的东西在做什么,所以我只是看着你的循环结构,tbh。 – Aaron

回答

0

使用相同的索引(iy)到阵列Duomenyschars/chars1,这似乎是非常不同的事物中识别的位置。鉴于缺乏所提供的信息,不能说出你应该做什么。