12
Scala เป็นวิธีที่ใช้สำนวนในการ "ลบ" องค์ประกอบหนึ่งออกจากรายการที่ไม่เปลี่ยนรูปได้อย่างไร
ฉันมีรายการซึ่งอาจมีองค์ประกอบที่จะเปรียบเทียบว่าเท่ากัน ฉันต้องการรายการที่คล้ายกัน แต่มีการลบองค์ประกอบหนึ่งรายการ ดังนั้นจาก (A, B, C, B, D) ฉันต้องการจะสามารถ "ลบ" B เพียงตัวเดียวเพื่อให้ได้เช่น (A, C, B, D) ลำดับขององค์ประกอบในผลลัพธ์ไม่สำคัญ ฉันมีรหัสการทำงานที่เขียนด้วยวิธีที่ได้รับแรงบันดาลใจจาก Lisp ใน Scala มีวิธีสำนวนมากกว่านี้ไหม? บริบทคือเกมไพ่ที่มีการเล่นไพ่มาตรฐานสองสำรับดังนั้นอาจมีไพ่ที่ซ้ำกัน แต่ยังคงเล่นทีละใบ def removeOne(c: Card, left: List[Card], right: List[Card]): List[Card] = { if (Nil == right) { return left } if (c == right.head) { return left …