Androidで配列の中央にある要素を取得する方法をわかりやすく解説
はじめに
この記事では、Androidアプリ開発において、配列の中から中央(真ん中)の要素を見つけて表示する方法を、サンプルコード付きで解説します。
考え方はシンプルで、配列の長さを2で割った値が中央要素のインデックスになります。これを利用すれば、数行のコードで中央の値を取得できます。
手順1:新しいプロジェクトを作成する
まずはAndroid Studioを起動し、メニューから「File」→「New Project」を選択します。必要な項目を入力して、新しいプロジェクトを作成してください。
手順2:レイアウトファイル(activity_main.xml)を編集する
次に、「res/layout/activity_main.xml」に以下のコードを追加します。
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="https://schemas.android.com/apk/res/android" xmlns:app="https://schemas.android.com/apk/res-auto" xmlns:tools="https://schemas.android.com/tools" android:layout_width="match_parent" android:gravity="center" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/text" android:textSize="30sp" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout>
上記のコードでは、画面いっぱいに広がるTextViewを配置しています。このTextViewに、取得した中央の要素を表示させます。
手順3:MainActivity.java を編集する
続いて、「src/MainActivity.java」に以下のコードを記述します。
package com.example.myapplication;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
@RequiresApi(api = Build.VERSION_CODES.P)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
int[] array = new int[]{1, 2, 3, 4, 5, 6, 7, 8};
int i = array.length;
i = i / 2;
TextView textView = findViewById(R.id.text);
textView.setText(String.valueOf(array[i]));
}
}
コードのポイント:
- サンプルとして、1〜8までの整数が入ったint型の配列を用意しています。
array.lengthで配列の長さ(8)を取得し、それを2で割ると「4」になります。- この「4」が中央要素のインデックスとなるため、
array[4]=「5」が中央の要素として画面に表示されます。 - なお、配列の要素数が偶数の場合、厳密には中央に2つの要素がありますが、この方法では後ろ側の要素が選ばれる点に注意してください。
アプリを実行してみよう
ここまで準備できたら、アプリケーションを実行してみましょう。あらかじめ、実際のAndroid端末をパソコンに接続しておいてください。
Android Studioからアプリを実行するには、プロジェクト内の任意のアクティビティファイルを開き、ツールバーの「Run」アイコンをクリックします。実行デバイスとして接続したモバイル端末を選択すると、端末の画面に結果が表示されます。

画面には配列の中央の要素である「5」が表示されれば成功です。このように、配列の長さを活用することで、簡単に中央の要素を取り出すことができます。
-
Android開発:ConcurrentLinkedQueueで要素を検索する方法(contains()の使い方を解説)
ConcurrentLinkedQueueとはConcurrentLinkedQueueは、リンクノードを基盤とした無制限(アンバウンド)のキューです。複数のスレッドから安全に要素へアクセスできる、スレッドセーフなコレクションクラスとして知られています。要素はFIFO(先入れ先出し)方式で処理され、新しい要素は常に末尾(テール)から挿入されます。なお、null値は許可されていない点に注意してください。この記事では、AndroidアプリでConcurrentLinkedQueue内の特定の要素を検索する方法を、サンプルコードとともにわかりやすく解説します。実装手順ステップ1:新規プロジェクトの作
-
AndroidでJavaのBitmapをバイト配列(byte[])に変換する方法【サンプルコード付き】
このチュートリアルでは、Androidアプリ開発において、JavaのBitmap(ビットマップ)画像をバイト配列(byte[])へ変換する方法を、ステップごとに詳しく解説します。画像の圧縮・保存やネットワーク送信など、さまざまな場面で役立つ基本テクニックです。ステップ1:新規プロジェクトを作成するまずはAndroid Studioを起動し、メニューから「File」→「New Project」を選択しましょう。必要な項目をすべて入力して、新しいプロジェクトを作成します。ステップ2:レイアウトファイル(activity_main.xml)を編集するres/layout/activity_main.