ArrayList.isEmpty() মেথডের ব্যবহার
ArrayList-এ isEmpty() মেথডটি তখন true রিটার্ন করে যখন লিস্টে কোনো এলিমেন্ট থাকে না। ListView-এ ডেটা না থাকলে এটি লুকিয়ে দেয়া বা খালি ভিউ দেখানো ভাল প্র্যাক্টিস।
উদাহরণ: খালি ArrayList চেক করে ListView ভিজিবিলিটি কন্ট্রোল
এই উদাহরণে ArrayList খালি কিনা চেক করে ListView-এর ভিজিবিলিটি সেট করা হয়েছে।
ধাপ ১-২: প্রজেক্ট ও লেআউট
পূর্বের উদাহরণের মতো activity_main.xml ব্যবহার করুন।
ধাপ ৩: MainActivity.java - isEmpty() চেক
package com.example.arraylistemptycheck;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.Toast;
import androidx.appcompat.app.AppCompatActivity;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Set;
public class MainActivity extends AppCompatActivity {
EditText name;
ArrayAdapter<String> arrayAdapter;
ArrayList<String> arrayList;
Set<String> nameSet = new HashSet<>();
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
arrayList = new ArrayList<>();
arrayList.ensureCapacity(20);
name = findViewById(R.id.name);
listView = findViewById(R.id.listView);
findViewById(R.id.refresh).setOnClickListener(v -> {
if (arrayAdapter != null) {
arrayAdapter.notifyDataSetChanged();
listView.invalidateViews();
listView.refreshDrawableState();
}
});
findViewById(R.id.save).setOnClickListener(v -> {
String inputName = name.getText().toString().trim();
if (!inputName.isEmpty()) {
nameSet.add(inputName);
arrayList.clear();
// ArrayList খালি কিনা চেক করা হচ্ছে
if (arrayList.isEmpty()) {
arrayList.addAll(nameSet);
Collections.sort(arrayList, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
arrayList.trimToSize();
arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, arrayList);
listView.setAdapter(arrayAdapter);
listView.setVisibility(View.VISIBLE); // ডেটা থাকলে দেখাবে
} else {
// এই ব্লক সাধারণত এক্সিকিউট হবে না কারণ arrayList.clear() এর পরই চেক করা হচ্ছে
listView.setVisibility(View.GONE); // ডেটা না থাকলে লুকিয়ে দেবে
}
Toast.makeText(this, "সংরক্ষণ সফল", Toast.LENGTH_LONG).show();
} else {
name.setError("নাম লিখুন");
}
});
}
}
ListView খালি হ্যান্ডলিংয়ের ভালো পদ্ধতি
বাস্তব অ্যাপ্লিকেশনে ListView-এ খালি অবস্থা হ্যান্ডল করার জন্য setEmptyView() ব্যবহার করা উচিত:
// XML-এ একটি TextView যোগ করুন android:id="@+id/emptyView" এবং android:visibility="gone" // তারপর জাভাতে: ListView listView = findViewById(R.id.listView); View emptyView = findViewById(R.id.emptyView); listView.setEmptyView(emptyView); // ArrayAdapter সেট করলে অটোমেটিক খালি হলে emptyView দেখাবে listView.setAdapter(arrayAdapter);
চলাচল ও ফলাফল
অ্যাপ রান করুন। প্রথমে ListView খালি থাকবে। নাম লিখে Save দিলে ListView দৃশ্যমান হবে এবং ডেটা দেখাবে।

ফলাফলে "abc" ইনসার্ট করার পর ListView-এ ডেটা দেখানো হয়েছে।