配列(リスト)の最後の要素を取得するには

Java、Scala、Perl、Go言語、Rubyでの配列(リスト)の最後の要素を取得する方法。

Javaの配列 arr[arr.length - 1]
JavaのList lst.get(lst.size() - 1)
Scala seq.last
Perl $arr[$#arr]
Go言語 arr[len(arr) - 1]
Ruby arr.last
Python lst[-1]

Java

配列

サイズから最後のインデックスを計算してアクセスする。サイズが0の場合は例外が発生する。

int[] arr = {3, 5, 7, 9};

// 配列の最後の要素を取得
System.out.println(arr[arr.length - 1]); // => 9

java.util.List

サイズから最後のインデックスを計算してアクセスする。サイズが0の場合は例外が発生する。

ArrayList<Integer> lst = new ArrayList<>();
lst.add(3);
lst.add(5);
lst.add(7);
lst.add(9);

// 配列の最後の要素を取得
System.out.println(lst.get(lst.size() - 1)); // => 9

Scala

def Seq[A]#last: A
def Seq[A]#lastOption: Option[A]

空のSeqに対してlastを呼び出すと、java.util.NoSuchElementException の例外がスローされてしまう。

Perl

# 配列の最後の要素を取得
my $last = $arr[$#arr]

$#arr で要素数より1小さい数、つまり最後の要素のインデックスを取得できる。

-> 配列のサイズの取得

Go言語 (golang)

サイズから最後のインデックスを計算してアクセスする。サイズが0の場合はpanicが発生する。配列とスライスとどちらも同じ。

arr[len(arr) - 1]

Ruby

Array#last というメソッドを使う。配列が空の場合は nil になる。

arr = [10, 20, 30, 40, 50]

# 最後の要素
p arr.last
p arr[-1]
# => 50

lastは数字を引数で与えると、最後からその数だけ要素を抜き出して、配列で返してくれる。

arr = [10, 20, 30, 40, 50]

p arr.last
# => 50
p arr.last(1)
# => [50]
p arr.last(3)
# => [30, 40, 50]

Array#last | Ruby 2.1 リファレンスマニュアル

sh

テキストファイルの最後の行を取得する方法

# 最後の1行を出力
tail -n1

関連

1個 n個
最初の○○以外の要素を取得するには tail drop
最初の○○の要素を取得するには head take
最後の○○の要素を取得するには last
このサイトは個人メモの集合です。
スポンサーリンク