Intercambio de pares de caracteres en una string en Java

Dada la string str , la tarea es escribir un programa Java para intercambiar los pares de caracteres de una string. Si la string contiene un número impar de caracteres, el último carácter permanece como está.

Ejemplos:

Entrada: string = «Java»

Salida: aJva

Explicación: La string dada contiene un número par de caracteres. Por lo tanto, intercambiamos cada par de caracteres.

Entrada: str = «GeeksForGeeks»

Salida: eGkeFsroeGkes

Explicación: La string dada contiene un número impar de caracteres. Por lo tanto, intercambiamos cada par de caracteres y el último carácter permanece como está.

1. Usando el método String.toCharArray()

  1. Obtenga la string para intercambiar un par de caracteres.
  2. Compruebe si la string es nula o está vacía y luego devuelva la string.
  3. Convertir la string dada en una array de caracteres.
  4. Atraviesa la array de caracteres e intercambia los caracteres.
  5. Ahora, imprime el resultado.

Java

// Java program to swap pair
// of characters of a string
  
class GFG {
  
    // Function to swap pair of
    // characters of a string
    public static String swapPair(String str)
    {
  
        // Checking if string is null
        // or empty then return str
        if (str == null || str.isEmpty())
            return str;
  
        // Converting the given string
        // into a character array
        char[] ch = str.toCharArray();
  
        // Traverse the character array
        for (int i = 0; i < ch.length - 1; i += 2) {
  
            // Swapping the characters
            char temp = ch[i];
            ch[i] = ch[i + 1];
            ch[i + 1] = temp;
        }
  
        // Converting the result into a
        // string and return
        return new String(ch);
    }
  
    // Driver Code
    public static void main(String args[])
    {
  
        // Given String str
        String str = "GeeksForGeeks";
  
        // Print the result
        System.out.println(swapPair(str));
    }
}
Producción

eGkeFsroeGkes


2. Usar el método StringBuffer.append()

  1. Obtenga la string para intercambiar un par de caracteres.
  2. Compruebe si la string es nula o está vacía y luego devuelva la string.
  3. Crear un objeto StringBuffer con una longitud de la string pasada como parámetro.
  4. Recorra la string y agregue los caracteres en el objeto StringBuffer en orden inverso.
  5. Compruebe si la string contiene un número impar de caracteres y luego agregue el último carácter al objeto StringBuffer .
  6. Ahora, imprime el resultado.

Java

// Java program to swap pair
// of characters of a string
  
class GFG {
  
    // Function to swap pair of
    // characters of a string
    public static String swapPairs(String str)
    {
  
        // Checking if string is null
        // or empty then return str
        if (str == null || str.isEmpty())
            return str;
  
        int len = str.length();
  
        // Creating a StringBuffer object with
        // length of the string passed as a parameter
        StringBuffer sb = new StringBuffer(len);
  
        // Traverse the string and append
        // the character in the StringBuffer
        // object in reverse order
        for (int i = 0; i < len - 1; i += 2) {
            sb.append(str.charAt(i + 1));
            sb.append(str.charAt(i));
        }
  
        // Checking if the string has
        // odd number of characters
        // then append the last character
        // into StringBuffer object
        if (len % 2 != 0) {
            sb.append(str.charAt(len - 1));
        }
  
        // Converting the StringBuffer
        // into the string and return
        return sb.toString();
    }
  
    // Driver Code
    public static void main(String args[])
    {
  
        // Given String str
        String str = "GeeksForGeeks";
  
        // Print the result
        System.out.println(swapPairs(str));
    }
}
Producción

eGkeFsroeGkes


Publicación traducida automáticamente

Artículo escrito por prashant_srivastava y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *