w3resource

Java programming Exercises: Move all lower case letters to the front, keeping the order of all the letters of a given word

Java Regular Expression: Exercise-23 with Solution

Write a Java program to move all lower case letters to the front of a given word keeping the relative position all the letters(both upper and lower case) same.

Sample Solution-1:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="Java";
		System.out.println("Original String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));
		text ="JavaScript";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));
		text ="SQLite";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));		
	}

   public static String validate(String text) {
        return text.replaceAll("[A-Z]", "") + text.replaceAll("[a-z]", "");
   }
}

Sample Output:

Original String: Java
Move all lower case letters to the front of the said word: avaJ

Original String: JavaScript
Move all lower case letters to the front of the said word: avacriptJS

Original String: SQLite
Move all lower case letters to the front of the said word: iteSQL

Pictorial Presentation:

Java Regular Expression: Move all lower case letters to the front, keeping the order of all the letters of a given word.

Flowchart :

Flowchart: Move all lower case letters to the front, keeping the order of all the letters of a given word.

Sample Solution-2:

Java Code:

public class test {
 
   public static void main(String[] args) {	   
	    String text ="Java";
		System.out.println("Original String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));
		text ="JavaScript";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));
		text ="SQLite";
		System.out.println("\nOriginal String: "+text);
		System.out.println("Move all lower case letters to the front of the said word: "+validate(text));		
	}

   public static String validate(String text) {
        String upper_ch = "",lower_ch = "";
        for(char ch : text.toCharArray())
			if(Character.isLowerCase(ch))
				lower_ch+=ch;
			else 
				upper_ch+= ch;
        return lower_ch + upper_ch;
   }
}

Sample Output:

Original String: Java
Move all lower case letters to the front of the said word: avaJ

Original String: JavaScript
Move all lower case letters to the front of the said word: avacriptJS

Original String: SQLite
Move all lower case letters to the front of the said word: iteSQL

Flowchart :

Flowchart: Move all lower case letters to the front, keeping the order of all the letters of a given word.

Java Code Editor:

Contribute your code and comments through Disqus.

Previous: Validate a given phone number.

Next: Separate consonants and vowels from a given string.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

Share this Tutorial / Exercise on : Facebook and Twitter

Java: Tips of the Day

What is the best way to filter a Java Collection?

Java 8 (2014) solves this problem using streams and lambdas in one line of code:

List<Person> beerDrinkers = persons.stream()
    .filter(p -> p.getAge() > 16).collect(Collectors.toList());

Use Collection#removeIf to modify the collection in place. (Notice: In this case, the predicate will remove objects who satisfy the predicate):

persons.removeIf(p -> p.getAge() <= 16);

lambdaj allows filtering collections without writing loops or inner classes:

List beerDrinkers = select(persons, having(on(Person.class).getAge(),
    greaterThan(16)));

Ref: https://bit.ly/3uwYid6