Foreach如何实现反向遍历啊

joyoyang 2013-02-22 11:18:07
string str = "china";
foreach (char c in str)
{
Trace.WriteLine(c);
}
打印出的结果是:
c
h
i
n
a

不过我想得到反向的遍历结果:
a
n
i
h
c

这个应该如何实现??(不要说先把str排反序,我就是想知道在不调整字符串顺序的前提下,如何反向遍历。。也不要说用for来遍历),只用foreach实现
...全文
16351 82 打赏 收藏 转发到动态 举报
写回复
用AI写文章
82 条回复
切换为时间正序
请发表友善的回复…
发表回复
vssvss 2013-05-29
  • 打赏
  • 举报
回复
引用 81 楼 syx151 的回复:
菜鸟就是这样,只想使用语言提供的"优雅"的特性,殊不知这些"优雅"的背后的实现原理. 不能用for非要用foreach就是这样. 曾经在百度知道上回答别人的一个简单的数学算法,我给出了具体实现,然后下面就来了一菜鸟开始嘲讽,说用Math类 就可以了,那菜鸟不知道的是Math内部也是用类似的算法来实现的.在菜鸟的眼里,程序的效率跟代码行数的多少是挂钩的.
完全理解
syx151 2013-05-28
  • 打赏
  • 举报
回复
菜鸟就是这样,只想使用语言提供的"优雅"的特性,殊不知这些"优雅"的背后的实现原理. 不能用for非要用foreach就是这样. 曾经在百度知道上回答别人的一个简单的数学算法,我给出了具体实现,然后下面就来了一菜鸟开始嘲讽,说用Math类 就可以了,那菜鸟不知道的是Math内部也是用类似的算法来实现的.在菜鸟的眼里,程序的效率跟代码行数的多少是挂钩的.
blue_apple2006 2013-05-28
  • 打赏
  • 举报
回复
引用 79 楼 so_while 的回复:
[quote=引用 62 楼 binjie1225 的回复:] 你不庸 说话给自己留条后路 免得日后被爆菊 我只是问问有没有这样的实现方法,没有的话就算了 楼猪看来也不是什么好鸟!!
我也觉得[/quote] 楼主在家被爆菊,出来忽悠大家了。
manbufenglin 2013-03-04
  • 打赏
  • 举报
回复
这年头“钓丝” 越来越不稀奇了,哈~~~
so_while 2013-03-04
  • 打赏
  • 举报
回复 1
引用 62 楼 binjie1225 的回复:
你不庸 说话给自己留条后路 免得日后被爆菊 我只是问问有没有这样的实现方法,没有的话就算了 楼猪看来也不是什么好鸟!!
我也觉得
appsou 2013-03-04
  • 打赏
  • 举报
回复
引用 44 楼 senliu1506 的回复:
C# code?1234567string str = "china"; string newStr = ""; foreach (char c in str) { newStr = c + "\n" + newStr; } Trac……
和你写的一样了,看来不是撸主需要的
appsou 2013-03-04
  • 打赏
  • 举报
回复
刚在写as3程序,看到了写下: string str = "china"; string result; foreach(char c in str){ result = c+"\n"+result; } Console.WriteLine(result);
  • 打赏
  • 举报
回复
根据你说的,不能实现。
rayyu1989 2013-03-04
  • 打赏
  • 举报
回复
引用 72 楼 sp1234 的回复:
其实把脑袋柱地、双脚举起,就行了!
很独特的解决方法
jayasme 2013-03-04
  • 打赏
  • 举报
回复
CSDN首页上总是一些无聊的问题,劝他他还跟你吹鼻子瞪眼
  • 打赏
  • 举报
回复
其实把脑袋柱地、双脚举起,就行了!
longmenwaideyu 2013-03-02
  • 打赏
  • 举报
回复
引用 3 楼 ariesget 的回复:
写个类继承string,重写GetEnumerator方法。
虽然不会c#,但是,我还是知道string是不能继承的。
_小黑_ 2013-03-02
  • 打赏
  • 举报
回复
beifang1986 2013-03-02
  • 打赏
  • 举报
回复
看看有没有高深 的武功,,,,
PCI_E 2013-03-01
  • 打赏
  • 举报
回复 1
foreach是迭代器,默认情况下只能按原有集合的顺序遍历集合,因为实现IEenumator接口的类的访问方式就和只能向前访问的游标一下,只能不断向下访问,而不能回归访问。
Delta 2013-03-01
  • 打赏
  • 举报
回复
引用 7 楼 qq542369628 的回复:
foreach语句本身是不可以实现顺序操作的,它的操作是集合对象的顺序。
是的
salecn 2013-03-01
  • 打赏
  • 举报
回复
来开下眼界,呵呵!
binjie1225 2013-03-01
  • 打赏
  • 举报
回复
你不庸 说话给自己留条后路 免得日后被爆菊 我只是问问有没有这样的实现方法,没有的话就算了 楼猪看来也不是什么好鸟!!
ShoulderLai 2013-03-01
  • 打赏
  • 举报
回复
无法实现,根本不是引进foreach关键字的初衷。
铁文 2013-03-01
  • 打赏
  • 举报
回复
脑筋急转弯的题目吧? string s; foreach (char c in str) { s = c + "\r\n" + s; } Trace.Write(s);
加载更多回复(61)

111,128

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧