Tôi đang tìm kiếm một cách thanh lịch để lấy một lát danh sách từ phần tử n trở đi mà không cần phải chỉ định độ dài của danh sách. Cho phép nói rằng chúng ta có một chuỗi multiline mà tôi chia thành dòng và sau đó muốn có được một danh sách của tất cả các dòng từ dòng 3 trở đi:Trong Scala, làm thế nào để có được một lát của một danh sách từ phần tử thứ n đến cuối danh sách mà không biết chiều dài?
string.split("\n").slice(3,X) // But I don't know what X is...
Những gì tôi đang thực sự quan tâm ở đây là liệu có một cách để giữ của một tham chiếu của danh sách được trả về bởi các cuộc gọi split
để chiều dài của nó có thể được thay thế thành X
tại thời điểm cuộc gọi slice
, loại như một ưa thích _
(trong trường hợp này nó sẽ đọc là slice(3,_.length)
)? Trong python ta không cần phải xác định phần tử cuối cùng của slice.
Tất nhiên tôi có thể giải quyết điều này bằng cách sử dụng biến tạm thời sau khi chia tách hoặc tạo hàm trợ giúp với cú pháp đẹp, nhưng tôi chỉ tò mò.
Đó có phải là cách duy nhất để có được 2 cuối cùng w/o biết # yếu tố? – Blankman
Danh sách (1,2,3,4,5) .reverse.take (2) .xác nhận để có được thứ tự ban đầu – ChuckCottrill