次のようなリストがある場合:
def list = ['a','b','c','d','c']
最初のcの前にあるすべての項目を削除したいのですが、groovy でこれを簡単に行うにはどうすればよいですか?
存在する場合、1行の回答を探しています:)。
def list = ['a', 1, 2, 3, 'c', 'b', 'c', 'd', 'c']
assert ['c', 'b', 'c', 'd', 'c'] == list.dropWhile{it != 'c'}
assert ['c', 'b', 'c', 'd', 'c'] == list.drop(list.indexOf('c'))
assert ['c', 'b', 'c', 'd', 'c'] == list[list.indexOf('c')..-1]
assert ['c', 'b', 'c', 'd', 'c'] == list.subList(list.indexOf('c'), list.size())
assert ['a', 1, 2, 3, 'c', 'b', 'c', 'd', 'c'] == list
メインlist
は常に保存されます。毎回新しいリストを取得します。