1
比較列表我不知道爲什麼下面的代碼段給出了#F輸出:在方案
=> (define a (cons 3 '()))
=> (define a (cons 3 '()))
=> (eq? a b)
;Value: #f
當比較均衡的名單?我們看一下,是否所有的值和它們的順序是一樣的,或者我們看看兩個列表是否是相同的列表?有人可以解釋嗎?
感謝
比較列表我不知道爲什麼下面的代碼段給出了#F輸出:在方案
=> (define a (cons 3 '()))
=> (define a (cons 3 '()))
=> (eq? a b)
;Value: #f
當比較均衡的名單?我們看一下,是否所有的值和它們的順序是一樣的,或者我們看看兩個列表是否是相同的列表?有人可以解釋嗎?
感謝
功能eq?
着眼於是否「兩個列表是相同的名單」;而equal?
着眼於'所有的價值和他們的順序是否相同'。在C
中,認爲eq?
是==
,但equal?
是while (l1 && l2 && equal (l1.item, l2.item) ...
謝謝,我現在明白了 – yrazlik 2013-04-28 16:45:56
使用'equal?'過程。 – leppie 2013-04-28 16:34:22