1
0
你可以雇佣 Composite 设计模式来模拟这种情况。当您需要以相同的方式处理对象类型以及该类型的对象集合时,此模式非常有用。你也可以使用 Chain of Responsibility 基本上,您可以这样定义类(假设您需要matches()方法):
带着
注意:我直接在这里对代码进行了编码,所以它可能有拼写错误或小错误。为了更好的可读性,我省略了构造函数。 |
2
3
您可以定义一个公共超类(接口),其中包含普通字符和字符类/组的子类。 |
3
1
如果您想要一个混合数组或集合,则需要抽象字符/字符并将其分组到公共接口或父类型后面。假设char是一个原语,Character是最后一个类,那么编写一个接口并包装char/Character将是最好的选择。
|
4
0
不能用两个不相关类型之一的元素定义数组。
或者,也许更简单,只需使用一个Object[]并用一个具有放置/获取正确类型智能的类包装它。 |
5
0
char[]是非类型化的,可能不是最好的交互方式。 组[]实际上并不是很能描述它的功能。 也许您可以有一个方法为“match”的接口,并将实现该接口的一堆对象粘贴在其中。
我喜欢你的“语言”通常比Regex更明确,那么像这样的东西呢:“[DIGIT][DIGIT][DIGIT][DIGIT]”或“[CAPS]pple”--加上必须的“[[]”和“[]”来匹配大括号。
|
Toniq · javascript为php保存多维数组 1 年前 |
Jannis · Java中数组的怪异行为 1 年前 |
callum · 如何识别数组中与给定序列不匹配的元素? 1 年前 |
tenfour · 如何使用数组元素的索引初始化数组元素 2 年前 |
Guillaume · 使用操作从Python列表创建numpy数组 2 年前 |
maxMas · Swift 5:为什么会出现索引超出范围错误? 2 年前 |