কম্পিউটার টিউটোরিয়াল

জাভাতে স্ট্রিং রিভার্স করার কৌশল: সহজ এবং দক্ষ পদ্ধতিগুলো

স্ট্রিং রিভার্স করা জাভা টেকনিক্যাল ইন্টারভিউতে সবচেয়ে বেশি জিজ্ঞাসা করা প্রশ্নের একটি। ইন্টারভিউয়ার আপনাকে স্ট্রিং রিভার্স করার বিভিন্ন উপায় লিখতে বলতে পারেন, অথবা বিল্ট-ইন মেথড ছাড়া স্ট্রিং রিভার্স করতে বলতে পারেন, অথবা রিকার্শন ব্যবহার করে স্ট্রিং রিভার্স করতে বলতে পারেন।

নিচে জাভাতে স্ট্রিং রিভার্স করার বিভিন্ন পদ্ধতি দেওয়া হল:

জাভাতে স্ট্রিং রিভার্স করা, সবচেয়ে সহজ উপায়

জাভাতে স্ট্রিং রিভার্স করার সবচেয়ে সহজ উপায় হল StringBuilder ক্লাসের বিল্ট-ইন reverse() ফাংশন ব্যবহার করা।

উদাহরণ:

package io.devqa.tutorials;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class ReverseString {
    String reverse(String inputString) {
        return new StringBuilder(inputString).reverse().toString();
    }
    @Test
    public void testAWord() {
        assertEquals("tobor", new ReverseString().reverse("robot"));
    }
}
  • জাভাতে toString() ওভাররাইড কেন
  • জাভাতে স্ট্রিং তুলনা কীভাবে
  • স্ট্রিং থেকে নম্বর বের কীভাবে করবেন
  • জাভাতে স্ট্রিংকে Int-এ কনভার্ট কীভাবে

রিকার্শন ব্যবহার করে স্ট্রিং রিভার্স করা

জাভাতে স্ট্রিং রিভার্স করার আরেকটি উপায় হল রিকার্শন ব্যবহার করা এবং String ক্লাসের charAt() মেথড ব্যবহার করা।

উদাহরণ:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class ReverseString {
    String reverse(String inputString) {
        StringBuilder reverseStringBuilder = new StringBuilder();
        for(int i = inputString.length() - 1; i >= 0; i--) {
            reverseStringBuilder.append(inputString.charAt(i));
        }
        return reverseStringBuilder.toString();
    }
    @Test
    public void testAWord() {
        assertEquals("tobor", new ReverseString().reverse("robot"));
    }
}

উপরের একটি ভেরিয়েশন হল toCharArray() ব্যবহার করে ক্যারেক্টারগুলোর ওপর লুপ চালানো:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class ReverseString {
    String reverse(String inputString) {
        String outString = "";
        for(char c : inputString.toCharArray()) {
            outString = c + outString;
        }
        return outString;
    }
    @Test
    public void testAWord() {
        assertEquals("tobor", new ReverseString().reverse("robot"));
    }
}

জাভা ৮-এ স্ট্রিং রিভার্স করা

import org.junit.jupiter.api.Test;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import static org.junit.jupiter.api.Assertions.assertEquals;

class ReverseString {
    String reverse(String inputString) {
        return IntStream.range(0, inputString.length())
            .mapToObj(x -> inputString.charAt((inputString.length() - 1) - x))
            .map(character -> String.valueOf(character))
            .collect(Collectors.joining(""));
    }
    @Test
    public void testAWord() {
        assertEquals("tobor", new ReverseString().reverse("robot"));
    }
}
  1. জাভাতে StringIndexOutOfBoundsException কী?

  2. জাভাতে String কে Double-এ রূপান্তর করা

  3. পাইথনে রিভার্স স্ট্রিং II (Reverse String II)

  4. পাইথনে স্ট্রিং রিভার্স (ইন-প্লেস)