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

Java में String रिवर्सल में महारत: सरल, कुशल तकनीकें

स्ट्रिंग को रिवर्स करना Java तकनीकी साक्षात्कार में सबसे अधिक पूछे जाने वाले प्रश्नों में से एक है। साक्षात्कारकर्ता आपसे स्ट्रिंग को रिवर्स करने के विभिन्न तरीके लिखने के लिए कह सकते हैं, या वे आपसे इन-बिल्ट विधियों का उपयोग किए बिना स्ट्रिंग को रिवर्स करने के लिए कह सकते हैं, या वे आपसे रिकर्सन का उपयोग करके स्ट्रिंग को रिवर्स करने के लिए भी कह सकते हैं।

नीचे Java में स्ट्रिंग को रिवर्स करने के लिए उपयोग की जा सकने वाली विभिन्न विधियां दी गई हैं।

Java में स्ट्रिंग रिवर्स करें, सबसे आसान तरीका

Java में स्ट्रिंग को रिवर्स करने का सबसे आसान तरीका 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"));
    }
}
  • Java में toString() को ओवरराइड क्यों करें
  • Java में Strings की तुलना कैसे करें
  • String से नंबर कैसे निकालें
  • Java में String को Int में कैसे बदलें

रिकर्सन का उपयोग करके स्ट्रिंग रिवर्स करें

Java में स्ट्रिंग को रिवर्स करने का एक और तरीका रिकर्सन का उपयोग करना और 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"));
    }
}

Java 8 में स्ट्रिंग रिवर्स करें

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. Java में StringIndexOutOfBoundsException क्या है? Java में StringIndexOutOfBoundsException क्या है?

    स्ट्रिंग्स का उपयोग Java में वर्णों के अनुक्रम को संग्रहीत करने के लिए किया जाता है, उन्हें ऑब्जेक्ट्स के रूप में माना जाता है। java.lang पैकेज का String क्लास एक स्ट्रिंग का प्रतिनिधित्व करता है। आप स्ट्रिंग को या तो new कीवर्ड का उपयोग करके (किसी अन्य ऑब्जेक्ट की तरह) बना सकते हैं, या लिटरल को मान

  1. - पायथन में रिवर्स स्ट्रिंग II

    मान लीजिए हमारे पास एक स्ट्रिंग और एक पूर्णांक k है, हमें स्ट्रिंग की शुरुआत से गिनती करते हुए हर 2k वर्णों के लिए पहले k वर्णों को उलटना है। यदि पर्याप्त वर्ण नहीं बचे हैं, तो उन सभी को उलट दें। यदि 2k से कम वर्ण हैं लेकिन k से अधिक या बराबर हैं, तो पहले k वर्णों को उलट दें और बाकी को मूल छोड़ दें

  1. - पायथन में स्ट्रिंग उल्टा करें

    मान लीजिए हमारे पास वर्णों की एक सरणी है। हमें बिना किसी अतिरिक्त स्थान का उपयोग किए स्ट्रिंग को उल्टा करना है। यदि स्ट्रिंग [H, E, L, L, O] जैसी है, तो आउटपुट [O, L, L, E, H] होगा। इसे हल करने के लिए हम इन चरणों का पालन करेंगे: दो पॉइंटर्स लें start = 0 और end = स्ट्रिंग की लंबाई - 1 पहले और अंति