黑马程序员技术交流社区

标题: 关于String字符串的遍历问一个小问题 [打印本页]

作者: yuanxiang05    时间: 2016-1-24 16:16
标题: 关于String字符串的遍历问一个小问题
本帖最后由 yuanxiang05 于 2016-1-24 16:18 编辑

老师在课程上对String字符串遍历都是将其转换成字符数组, 再遍历. 如:
  1. String s = "呵呵呵";
  2.                 char[] arr = s.toCharArray();
  3.                 for (char c : arr) {
  4.                         System.out.println(c);
  5.                 }
复制代码
而我比较喜欢通过String方法来直接对字符串进行遍历, 如:
  1. String s1 = "嘿嘿嘿";
  2.                 for(int i = 0; i < s.length(); i++) {
  3. System.out.println(s1.charAt(i));
  4.                 }
复制代码
请问我这种有什么不妥之处吗?比较说运行效率之类的....
反正我这种方法节省了字符串到字符数组的转换, 可怜的是不能用增强for循环了.
求大神帮分析一下,谢谢啦



作者: Mayer    时间: 2016-1-24 18:35
第一个for(:)循环必须遍历,第二个for(;;)循环不需要遍历全部内容,能选定字符段
作者: 擎天柱    时间: 2016-1-24 19:44
顶一个,求string与char[]运行效率的区别
作者: yuanxiang05    时间: 2016-1-25 13:18
Mayer 发表于 2016-1-24 18:35
第一个for(:)循环必须遍历,第二个for(;;)循环不需要遍历全部内容,能选定字符段 ...

我没有在纠结两个for的问题,我在纠结试用charAt()方法遍历字符串的问题
作者: yuanxiang05    时间: 2016-1-25 13:20
擎天柱 发表于 2016-1-24 19:44
顶一个,求string与char[]运行效率的区别

是啊是啊,我就是纠结这个区别
作者: Mayer    时间: 2016-1-25 13:22
yuanxiang05 发表于 2016-1-25 13:18
我没有在纠结两个for的问题,我在纠结试用charAt()方法遍历字符串的问题

哦哦,我没学得你这么仔细,,
作者: yuanxiang05    时间: 2016-1-25 18:06
Mayer 发表于 2016-1-25 13:22
哦哦,我没学得你这么仔细,,

我是一个又懒又强迫的人,既然字符串本身有方法遍历就懒得转字符数组了
作者: 洋葱头头    时间: 2016-1-25 18:45
.这根本不用考虑效率问题....
作者: Mayer    时间: 2016-1-25 21:51
yuanxiang05 发表于 2016-1-25 18:06
我是一个又懒又强迫的人,既然字符串本身有方法遍历就懒得转字符数组了 ...

又遇处女座
作者: 无英彦    时间: 2016-1-26 00:12
求助
输入一串字符串,在字符串的末尾处添加100个“OK,”
最后将最后一个“,”删除
作者: ConsciousStream    时间: 2016-1-26 10:23
无英彦 发表于 2016-1-26 00:12
求助
输入一串字符串,在字符串的末尾处添加100个“OK,”
最后将最后一个“,”删除 ...
  1. String s = "";
  2.                 for(int i=0;i<100;i++){
  3.                         if(i==99)
  4.                                 s = s+"OK";
  5.                         else
  6.                                 s = s+"OK,";
  7.                 }
  8.                 System.out.println(s);
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2