Bryce C
Bryce C

Reputation: 11

swapping two letters in an unknown string in java

i am writing a program that must scramble a word. First I read in the word backwards using .reverse. Then I turned the string into a charArray.I am suppose to create a for loop to figure out if the First letter is "A" and if it is then i have to see if the next letter is not an "A". if its not then i am suppose to swap the two letters. If any of the two letters have a;ready been swapped than they cannot be swapped again. Some examples are Input: “TAN” Output: “ATN” Input: “ALACTRIC” Output:“AALCTRIC” Input: "Fork" Output:"Fork"

Here is my code so far: i cannot figure out what to put in the for loop. Thank you!

import java.util.Scanner;

public class scrambleWordRetry {
    public static void main(String[] args)
      {
      }
    public static String scramble( Random random, String inputString)
    {
        Scanner scan = new Scanner(System.in);
        System.out.println("Please enter a word to scramble.");
        inputString = scan.nextLine();

        char a[] = inputString.toCharArray();

         for( int i=0 ; i<a.length-1 ; i++ )
            {

            }
        return inputString;     
    }
}

Upvotes: 1

Views: 208

Answers (1)

Ghaith Al-Tameemi
Ghaith Al-Tameemi

Reputation: 370

I hope this code is useful for you

    Scanner x = new Scanner(System.in);
    String str = x.next();
    System.out.println("Before Swapping" + str);
    str = scramble(str);
    System.out.println("After Swapping " + str);
}

public static String scramble(String inputString) {
    char s[] = inputString.toCharArray();
    for (int i = 1; i < s.length; i++) {

        if (s[i] == 'A' || s[i] == 'a') {
            char temp = s[i - 1];
            s[i - 1] = s[i];
            s[i] = temp;

        }
    }
    return new String(s);
}

then if you input 'ALACTRIC' the output will be 'AALCTRIC', 'Tan = aTn', 'fork = fork'.

Upvotes: 3

Related Questions