Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

एंड्रॉइड TextView में equals() का उपयोग कैसे करें?

एंड्रॉइड में equals() मेथड से केस-सेंसिटिव स्ट्रिंग तुलना

यह ट्यूटोरियल दर्शाता है कि equals() मेथड का उपयोग करके दो स्ट्रिंग्स की सटीक तुलना कैसे करें (केस-सेंसिटिव)।

चरण 1: प्रोजेक्ट बनाएं

एंड्रॉइड स्टूडियो में नया Empty Activity प्रोजेक्ट बनाएं।

चरण 2: लेआउट (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:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    android:padding="24dp"
    tools:context=".MainActivity">

    <EditText
        android:id="@+id/inputText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="टेक्स्ट दर्ज करें"
        android:inputType="text"
        android:layout_marginBottom="16dp"/>

    <Button
        android:id="@+id/compareButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="'point' से तुलना करें (केस-सेंसिटिव)"
        android:layout_marginBottom="16dp"/>

    <TextView
        android:id="@+id/resultText"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textStyle="bold"
        android:padding="16dp"
        android:background="#FFF3E0"/>

</LinearLayout>

चरण 3: एक्टिविटी कोड (src/MainActivity.java)

package com.example.equalsdemo;

import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

    private EditText inputText;
    private Button compareButton;
    private TextView resultText;
    private static final String TARGET = "point";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        inputText = findViewById(R.id.inputText);
        compareButton = findViewById(R.id.compareButton);
        resultText = findViewById(R.id.resultText);

        compareButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String input = inputText.getText().toString().trim();

                if (input.isEmpty()) {
                    inputText.setError("कृपया टेक्स्ट दर्ज करें");
                    inputText.requestFocus();
                    return;
                }

                // equals() - सटीक केस-सेंसिटिव तुलना
                boolean matches = input.equals(TARGET);

                String message = matches 
                    ? "✓ सटीक मेल (true)" 
                    : "✗ मेल नहीं (false) - केस या कंटेंट अलग है";
                resultText.setText(message);
                resultText.setTextColor(matches ? 0xFF4CAF50 : 0xFFF44336);
            }
        });
    }
}

equals() मेथड विवरण

  • उद्देश्य: दो स्ट्रिंग ऑब्जेक्ट्स की सामग्री की तुलना करता है
  • केस-सेंसिटिव: हां - "Point" ≠ "point"
  • रिटर्न: true यदि दोनों स्ट्रिंग्स में समान कैरेक्टर्स समान क्रम में हों
  • नल सुरक्षा: "point".equals(input) नल-सेफ है, input.equals("point") NPE फेंक सकता है

उदाहरण परिणाम

इनपुटपरिणामकारण
"point"trueसटीक मेल
"POINT"falseकेस अलग
"Point"falseकेस अलग
"point "falseट्रेलिंग स्पेस
"pointer"falseअतिरिक्त कैरेक्टर्स

सर्वोत्तम अभ्यास

// ✓ अनुशंसित - नल-सेफ
if ("point".equals(userInput)) { ... }

// ✗ टालें - NPE संभव
if (userInput.equals("point")) { ... }

// जावा 7+ के लिए Objects.equals() भी नल-सेफ
if (Objects.equals(userInput, "point")) { ... }

equals() vs == ऑपरेटर

  • == रेफरेंस तुलना करता है (मेमोरी एड्रेस)
  • equals() कंटेंट तुलना करता है (वास्तविक स्ट्रिंग मान)
  • स्ट्रिंग पूल के कारण कभी-कभी == काम करता हुआ लगता है, लेकिन भरोसेमंद नहीं

चरण 4: टेस्ट करें

  1. ऐप चलाएं
  2. सटीक "point" (लोअरकेस) दर्ज करें → true
  3. "POINT", "Point", "point " → false

एंड्रॉइड TextView में equals() का उपयोग कैसे करें?

एंड्रॉइड TextView में equals() का उपयोग कैसे करें?

  1. Android में स्ट्रिंग तुलना का उपयोग कैसे करें? Android में स्ट्रिंग तुलना का उपयोग कैसे करें?

    Android में स्ट्रिंग तुलना तकनीकें यह उदाहरण दर्शाता है कि Android में स्ट्रिंग तुलना का उपयोग कैसे करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में एक नया प्रोजेक्ट बनाएं: File → New Project पर जाएं और नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें। चरण 2: लेआउट XML जोड़ें (res/layout/activi

  1. Android में StringBuffer का उपयोग कैसे करें? Android में StringBuffer का उपयोग कैसे करें?

    Android में StringBuffer क्लास का उपयोग उदाहरण में जाने से पहले, हमें पता होना चाहिए कि StringBuffer क्या है। StringBuffer क्लास का उपयोग म्यूटेबल स्ट्रिंग बनाने के लिए किया जाता है और यह थ्रेड-सेफ है। यह उदाहरण दर्शाता है कि Android में StringBuffer का उपयोग कैसे करें। चरण 1: नया प्रोजेक्ट बनाएं A

  1. Android में ButterKnife लाइब्रेरी का उपयोग कैसे करें? Android में ButterKnife लाइब्रेरी का उपयोग कैसे करें?

    Android में ButterKnife से व्यू बाइंडिंग सरल बनाना ButterKnife एक व्यू बाइंडिंग लाइब्रेरी है जो findViewById() कॉल्स को एनोटेशन से बदल देती है। नोट: ButterKnife अब डिप्रिकेटेड है; आधुनिक ऐप्स के लिए View Binding (बिल्ट-इन) या Data Binding उपयोग करें। ⚠ डिप्रिकेटेड: Jake Wharton ने ButterKnife को म