我有功能:
onlySecond([],[]).
onlySecond([H1,H2|T1],[H2|T2]) :- onlySecond(T1,T2).
它返回列表中的每个第二个元素。
但是我很好奇为什么当第一个参数是带有 1 个元素的列表时它什么都不返回(在我看来,它必须返回 [] - 空列表)。例子:
onlySecond([1],X). - not return anything.. but why it doesn't return []??
我有功能:
onlySecond([],[]).
onlySecond([H1,H2|T1],[H2|T2]) :- onlySecond(T1,T2).
它返回列表中的每个第二个元素。
但是我很好奇为什么当第一个参数是带有 1 个元素的列表时它什么都不返回(在我看来,它必须返回 [] - 空列表)。例子:
onlySecond([1],X). - not return anything.. but why it doesn't return []??