0% found this document useful (0 votes)
19 views8 pages

Java String and Array Manipulation Techniques

The document provides various Java programming solutions, including converting camelCase to snake_case, finding common characters between two strings, identifying the second largest number in an array, checking for palindromes, and finding the longest string in an array. It also covers counting character occurrences, removing duplicates, and identifying unique and duplicate elements in a string. Each solution utilizes Java 8 features such as streams and collectors for efficient data manipulation.

Uploaded by

nsharma4uni
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views8 pages

Java String and Array Manipulation Techniques

The document provides various Java programming solutions, including converting camelCase to snake_case, finding common characters between two strings, identifying the second largest number in an array, checking for palindromes, and finding the longest string in an array. It also covers counting character occurrences, removing duplicates, and identifying unique and duplicate elements in a string. Each solution utilizes Java 8 features such as streams and collectors for efficient data manipulation.

Uploaded by

nsharma4uni
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

1.

whatIsYourName -> WHAT_IS_YOUR_NAME_SFA

String s = "whatIsYourName";

Solution :

String s1=" whatIsYourName";

String replaceString=[Link]("([A-Z]+)","\\_$1").toUpperCase();

2.

String first = "this is";

String second = "is one test";

String common = printCommonChars(first, second);

private static void printCommonChars(String firstString, String secondString)

char[] firstStringToCharArray = [Link]("\\s+", "").toCharArray();

char[] secondStringToCharArray = [Link]("\\s+", "").toCharArray();

Set<Character> firstStringSet = new TreeSet<>();

Set<Character> secondStringSet = new TreeSet<>();

for (char c : firstStringToCharArray)

[Link](c);

for (char c : secondStringToCharArray)


{

[Link](c);

[Link](secondStringSet);

[Link]("Common characters in alphabetical order : "+firstStringSet);

[Link]("Count : "+[Link]());

3. int arr[] = {10,20,12,1,2,0,4,3,0,5,0};

Solution :

int secondLargestNumber = Arrays

.stream(numbers)

.boxed() *****

.sorted([Link]())

.distinct()

.limit(2)

.skip(1)

.findFirst()

.get();

List<Integer> numbers1 = [Link](5, 9, 11, 2, 8, 21, 1);

int secondLargestNumber1 = numbers1

.stream()

.distinct()
.sorted([Link]())

.limit(2)

.skip(1)

.findFirst()

.get();

ArrayList<Integer> arr = new ArrayList<>([Link](12,44,76,1,8,9,9));

int highest = [Link]().sorted([Link]()).collect([Link]()).get(1);


//get(n-1)

4. Find Palindrome string

String str1 = "madam";

String str = "nikhil";

Solution :

private static boolean isPalindromeWithStringBuilder(String input) {

-- 1 way using string builder

//return [Link](new StringBuilder(input).reverse().toString());

--2nd way using apache stringUtils

//return [Link]([Link](input));

-- 3rd way using for loop

String reverse = "";

for(int i=[Link]()-1 ; i>=0;i--){

reverse = reverse + [Link](i);

return [Link](reverse);
}

5. Find the longest String from a given Array using java 8

String[] strArray={"Java","sai","system","microservices"};

Solution:

--1st way using comparator

String longetsString = [Link](names).max([Link](String::length)).get();

--2nd way using reduce function

String longetsString = [Link](names).reduce((x,y)-> [Link]() > [Link]()? x : y).get();

[Link]("Longest String : "+longetsString);

--3rd way using sorting

String longestStr = Arrays

.stream(names)

.sorted((str1, str2) -> [Link]() > [Link]() ? -1 : 1)

.findFirst()

.get();

[Link]("\nLongest String is = " + longestStr);

6. write the java Program to find the Occurance of Each Charcter in a given String using Java 8

String s="saisystemjavadeveloper";

Solution : Map<String, Long> output =


[Link]([Link]("")).collect([Link]([Link](), [Link]()));
2nd approach :

HashMap <Character, Integer> charCount = new HashMap<>();

for (int i = [Link]() - 1; i >= 0; i--)

if([Link]([Link](i)))

int count = [Link]([Link](i));

[Link]([Link](i), ++count);

else

[Link]([Link](i),1);

[Link](charCount);

7.

Find common in int array

int arr1[] = {1,2,5,6,9};

int arr2[] = {1,2,5,8,4};

List<Integer> res = [Link](arr1).filter(str -> [Link](arr2).anyMatch(st ->


st==str)).boxed().collect([Link]());

8. reverse int array


int arr1[] = {1,2,5,6,9};

One way --->

Object[] rs = [Link](1, [Link])

.mapToObj(i -> arr1[[Link] - i])

.toArray();

[Link]([Link](rs));

Second way --->

List<Object> list = [Link](array);

[Link](list);

9. remove duplicates

ArrayList<Integer> numbersList = new ArrayList<>([Link](1, 1, 2, 3, 3, 3, 4, 5, 6, 6, 6, 7, 8));

List<Integer> listWithoutDuplicates = [Link]().distinct().collect([Link]());

String input = "ilovejavatechie";

//Count the occurrence of each character in a string

Map<String, Long> map =


[Link]([Link]("")).collect([Link]([Link](),[Link]())
);

[Link](map);
//find duplicate element from given string

List<String> duplicateselement = [Link]([Link](""))

.collect([Link]([Link](),[Link]()))

.entrySet().stream()

.filter(x -> [Link]() > 1)

.map([Link]::getKey)

.collect([Link]());

[Link](duplicateselement);

//find Unique element from given string

List<String> uniqueelement = [Link]([Link](""))

.collect([Link]([Link](),[Link]()))

.entrySet().stream()

.filter(x -> [Link]() == 1)

.map([Link]::getKey)

.collect([Link]());

[Link](uniqueelement);

//first non repeated element from given string//Use linked hashmap for order

String firstnonrepeated = [Link]([Link]("")) //LinkedHashMap*****

.collect([Link]([Link](),LinkedHashMap::new,
[Link]()))

.entrySet().stream()

.filter(x -> [Link]() == 1)

.findFirst().get().getKey();

//.collect([Link]());
[Link](firstnonrepeated);

You might also like