zoukankan      html  css  js  c++  java
  • 在Java、C#和C++中遍历集合

    在Java中,常见的遍历集合方式如下:

    Iterator iter = list.iterator();
    while (iter.hasNext()) {
     Object item 
    = iter.next();
    }

    也可以使用for

    for (Iterator iter = list.iterator(); iter.hasNext()) {
       Object item 
    = iter.next();
    }


    JDK 1.5引入的增强的for语法

    List list = 
    for (Integer item : list) {
    }

    在C#中,遍历集合的方式如下:

    foreach (Object item in list) 
    {
    }

    其实你还可以这样写,不过这样写的人很少而已

    IEnumerator e = list.GetEnumerator();
    while (e.MoveNext()) 
    {
     Object item 
    = e.Current;
    }

    在C# 2.0中,foreach能够作一定程度的编译期类型检查。例如:

    IList<int> intList = 
    foreach(String item in intList) { } //编译出错


    在C++标准库中。for_each是一种算法。定义如下:
    for_each(InputIterator beg, InputIterator end, UnaryProc op)
    C++中,由于能够重载运算符(),所以有一种特殊的对象,仿函数。

    template<class T>
    class AddValue {
        
    private:
            T theValue;
        
    public:
            AddValue(
    const T& v) : theValue(v) {
            }

            
            
    void operator() (T& elem) const {
                elem 
    += theValue;
            }

    }
    ;

    vector
    <int> v;
    INSERT_ELEMENTS(v, 
    19);

    for_each (v.begin(), v.end(), AddValue
    <int>(10));
  • 相关阅读:
    前端一些词汇的缩写
    github上值得关注的前端项目
    window注册表
    注册表删除chrome插件
    js二维码扫描
    git push --no-thin
    mac下app store 无法完成您的购物操作
    git终端提示符
    mac 下 apache设置
    windows 下 apache设置
  • 原文地址:https://www.cnblogs.com/jobs/p/27008.html
Copyright © 2011-2022 走看看