Rumah >Java >javaTutorial >Bagaimana untuk Menghantar Tatasusunan Integer Antara Aktiviti menggunakan Intent.putExtra()?

Bagaimana untuk Menghantar Tatasusunan Integer Antara Aktiviti menggunakan Intent.putExtra()?

Barbara Streisand
Barbara Streisandasal
2024-10-25 07:52:021053semak imbas

How to Send an Array of Integers Between Activities using Intent.putExtra()?

Menghantar Tatasusunan Menggunakan Intent.putExtra()

Apabila memindahkan data antara aktiviti, mungkin perlu untuk menghantar struktur data yang kompleks seperti tatasusunan. Artikel ini meneroka cara menghantar tatasusunan integer secara berkesan daripada satu aktiviti (A) ke satu lagi (B) menggunakan Intent.putExtra().

Masalah:

Dalam aktiviti A, tatasusunan integer dimulakan dan bertujuan untuk dihantar ke aktiviti B. Walau bagaimanapun, apabila menerima data dalam aktiviti B, hanya nilai '0' diambil dan bukannya nilai tatasusunan yang dijangkakan.

Penyelesaian:

Isunya terletak pada ketidakpadanan jenis data apabila menetapkan dan mendapatkan tambahan. Dalam kod yang disediakan:

  1. Apabila menghantar data, kaedah putExtra() digunakan dengan argumen tatasusunan:

    <code class="java">i.putExtra("numbers", array);</code>
  2. Apabila menerima data, kaedah getExtras() cuba mendapatkan semula data sebagai integer tunggal:

    <code class="java">int arrayB = extras.getInt("numbers");</code>

Pendekatan yang betul ialah menerima data sebagai tatasusunan dengan menggunakan getIntArray( ) kaedah sebaliknya:

<code class="java">int[] arrayB = extras.getIntArray("numbers");</code>

Dengan menggunakan getIntArray(), data yang diterima boleh berjaya disimpan dalam tatasusunan integer.

Atas ialah kandungan terperinci Bagaimana untuk Menghantar Tatasusunan Integer Antara Aktiviti menggunakan Intent.putExtra()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn