我正在关注Scala文档here,我有几个问题:
type T
是什么意思?它的用途是什么?
这是什么语法:s charAt i
和richStringIter foreach println
?这里发生了什么? s
是方法调用charAt
的收件人吗?
为什么RichIterator
需要延长AbsIterator
?
RichStringIter
是否需要致电foreach
并且由于它延伸StringIterator
,foreach
方法可以调用next
和{{ 1}}呢?
在此之前,文档没有解释这一点。
答案 0 :(得分:1)
T是什么意思?它的用途是什么?
类型T用作占位符,以根据需要使用不同的数据类型。为此研究泛型。
这是什么语法:s charAt i和richStringIter foreach println? 这里发生了什么?该方法的接收者是charAt吗?
您可以将String视为Char数组。 charAt将从String中给出该特定位置的角色。索引从0开始。
charAt方法应用于String,并返回匹配索引的Char
foreach是一种遍历给定序列的所有元素并返回Unit的方法。即你可以执行任何不返回值的任务
为什么RichIterator需要扩展AbsIterator?
因为从AbsIterator中重新生成hasNext和next元素并在RichIterator中实现foreach是一种设计选择。 AbsIterator也是抽象的。可以将其视为一个模板,可以根据开发人员对其他应用程序的选择重复使用。请在Scala中学习特征和抽象类以完全理解这一点。
RichStringIter的重点是调用foreach以及它 扩展StringIterator,foreach方法可以调用next和hasNext 太?
foreach将遍历序列中的所有元素。这也是一种设计,是Scala特性和抽象类的重要组成部分。浏览Scala特征和抽象类。 Scala中的编程对于这个
来说是个不错的选择