gpt4 book ai didi

java - C++ 迭代器模型与 Java 迭代器模型

转载 作者:搜寻专家 更新时间:2023-10-31 00:39:08 25 4
gpt4 key购买 nike

<分区>

C++ 的 STL 的基本迭代器模型基本上由一个“给我当前位置的项目”运算符*,一个“转到下一个项目”运算符++ 和一个谓词 ==/!= 用于(大部分时间)检查结束迭代器。当然,还有各种具有随机访问功能的迭代器,但最基本的迭代器与上述类似。

相比之下,Java有next()hasNext()。 Next 大致相当于使用++ 然后是*hasNext() 类似于对结束的比较。为什么Java没有采用C++模型(当然,它没有运算符重载,所以它必须通过函数来​​模仿它)?特别是,为什么针对 hasNext() 方法放弃了与结束迭代器的比较?我发现在 Java 中编写迭代器通常比在 C++ 中更难,因为 next()hasNext() 背后的逻辑通常比 C++ 运算符中的逻辑更复杂。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com