【发布时间】:2013-01-11 05:29:49
【问题描述】:
我已经看到在指定索引范围时使用了两种替代约定,例如
subString(int startIndex, int length);
对比
subString(int startIndex, int endIndex);
就你可以用它们做什么而言,它们显然是等价的,唯一的区别是你是指定结束索引还是范围的长度。
我假设在所有情况下 startIndex 都是包容性的,而 endIndex 是排斥性的。
在定义 API 时,是否有任何令人信服的理由优先选择其中一个?
【问题讨论】:
-
顺便说一句,我认为使用 firstIndex/lastIndex 更好——对于开始/结束索引,是否包含 endIndex 处的元素是一个悬而未决的问题,因此必须深入研究文档。
标签: api language-agnostic coding-style api-design