0% found this document useful (0 votes)
8 views13 pages

Week 6 - Level 1 - 10 (Step) Rithish S

The document contains a series of Java programming exercises focused on string manipulation, exception handling, and comparisons between user-defined methods and built-in methods. Each exercise includes code examples, expected outputs, and explanations of various exceptions such as NullPointerException, StringIndexOutOfBoundsException, and others. The exercises aim to enhance understanding of string operations and error handling in Java.

Uploaded by

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

Week 6 - Level 1 - 10 (Step) Rithish S

The document contains a series of Java programming exercises focused on string manipulation, exception handling, and comparisons between user-defined methods and built-in methods. Each exercise includes code examples, expected outputs, and explanations of various exceptions such as NullPointerException, StringIndexOutOfBoundsException, and others. The exercises aim to enhance understanding of string operations and error handling in Java.

Uploaded by

santypravin3
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

Name: RITHISH S

Regno:RA2411003012057
Sec:L2

Week 6 - Level 1 - 10 Practice Problems.

1. Write a program to compare two strings using the charAt() method and check the result with the
built-in String equals() method.

import java.util.Scanner;

public class StringCompare {


public static boolean compareUsingCharAt(String s1, String s2) {
if (s1.length() != s2.length()) {
return false;
}
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) != s2.charAt(i)) {
return false;
}
}
return true;
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter first string: ");


String str1 = scanner.next();

System.out.print("Enter second string: ");


String str2 = scanner.next();
boolean charAtResult = compareUsingCharAt(str1, str2);
boolean equalsResult = str1.equals(str2);

System.out.println("\nResult from charAt() comparison: " + charAtResult);


System.out.println("Result from equals() method: " + equalsResult);

if (charAtResult == equalsResult) {
System.out.println("✅ Both methods give the same result.");
} else {
System.out.println("❌ Methods give different results.");
}

scanner.close();
}
}
Output:
Enter first string: code
Enter second string: code
Result from charAt() comparison: true
Result from equals() method: true
✅ Both methods give the same result.

2. Write a program to create a substring from a String using the charAt() method. Also, use the String
built-in method substring() to find the substring of the text. Finally Compare the the two strings
and display the results.
import java.util.Scanner;

public class SubstringCompare {


public static String createSubstringUsingCharAt(String text, int start, int end) {
String result = "";
for (int i = start; i < end; i++) {
result += text.charAt(i);
}
return result;
}
public static boolean compareUsingCharAt(String s1, String s2) {
if (s1.length() != s2.length()) {
return false;
}
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) != s2.charAt(i)) {
return false;
}
}
return true;
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);
System.out.print("Enter the main string: ");
String mainText = scanner.next();
System.out.print("Enter start index: ");
int start = scanner.nextInt();
System.out.print("Enter end index: ");
int end = scanner.nextInt();

String customSubstring = createSubstringUsingCharAt(mainText, start, end);


String builtInSubstring = mainText.substring(start, end);
boolean comparisonResult = compareUsingCharAt(customSubstring, builtInSubstring);

System.out.println("\nSubstring using charAt(): " + customSubstring);


System.out.println("Substring using substring(): " + builtInSubstring);
System.out.println("Are both substrings equal? " + comparisonResult);

scanner.close();
}
}
Output:
Enter the main string: programming
Enter start index: 3
Enter end index: 8

Substring using charAt(): gramm


Substring using substring(): gramm
Are both substrings equal? True

3. Write a program to return all the characters in a string using the user-defined
method, compare the result with the String built-in toCharArray() method, and dis-
play the result.

import java.util.Scanner;

public class CharArrayCompare {


public static char[] getCharsFromString(String text) {
char[] chars = new char[text.length()];
for (int i = 0; i < text.length(); i++) {
chars[i] = text.charAt(i);
}
return chars;
}

public static boolean compareCharArrays(char[] a1, char[] a2) {


if (a1.length != a2.length) {
return false;
}
for (int i = 0; i < a1.length; i++) {
if (a1[i] != a2[i]) {
return false;
}
}
return true;
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter a string: ");


String input = scanner.next();

char[] userDefinedArray = getCharsFromString(input);


char[] builtInArray = input.toCharArray();

boolean areEqual = compareCharArrays(userDefinedArray, builtInArray);

System.out.print("\nCharacters from user-defined method: ");


for (char c : userDefinedArray) {
System.out.print(c + " ");
}
System.out.print("\nCharacters from toCharArray() method: ");
for (char c : builtInArray) {
System.out.print(c + " ");
}

System.out.println("\nAre both arrays equal? " + areEqual);

scanner.close();
}
}

Output:
Enter a string: java
Characters from user-defined method: j a v a
Characters from toCharArray() method: j a v a
Are both arrays equal? True

4. Write a program to demonstrate NullPointerException.

public class NullPointerDemo {

public static void generateException() {


String text = null;
System.out.println("Length of text: " + text.length());
}

public static void handleException() {


String text = null;
try {
System.out.println("Length of text: " + text.length());
} catch (NullPointerException e) {
System.out.println("Caught NullPointerException: " + e.getMessage());
}
}

public static void main(String[] args) {

handleException();
}
}

Output:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "String.length()"
because "text" is null
at NullPointerDemo.generateException(NullPointerDemo.java:5)
at NullPointerDemo.main(NullPointerDemo.java:15)

5. Write a program to demonstrate StringIndexOutOfBoundsException.

import java.util.Scanner;

public class StringIndexOutOfBoundsDemo {

public static void generateException(String text) {


System.out.println("Character at index 10: " + text.charAt(10));
}

public static void handleException(String text) {


try {
System.out.println("Character at index 10: " + text.charAt(10));
} catch (StringIndexOutOfBoundsException e) {
System.out.println("Caught StringIndexOutOfBoundsException: " + e.getMessage());
}
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter a string: ");


String input = scanner.next();

handleException(input);

scanner.close();
}
}

Output:
Enter a string: java
Caught StringIndexOutOfBoundsException: String index out of range: 10.

6. Write a program to demonstrate IllegalArgumentException.

import java.util.Scanner;

public class IllegalArgumentDemo {

public static void generateException(String text) {


String sub = text.substring(5, 2);
System.out.println("Substring: " + sub);
}

public static void handleException(String text) {


try {
String sub = text.substring(5, 2);
System.out.println("Substring: " + sub);
} catch (IllegalArgumentException e) {
System.out.println("Caught IllegalArgumentException: " + e.getMessage());
} catch (RuntimeException e) {
System.out.println("Caught RuntimeException: " + e.getMessage());
}
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter a string: ");


String input = scanner.next();

handleException(input);

scanner.close();
}
}

Output:
Enter a string: example
Caught IllegalArgumentException: begin 5, end 2, length 7.

7. Write a program to demonstrate NumberFormatException.

import java.util.Scanner;
public class NumberFormatDemo {

public static void generateException(String text) {


int number = Integer.parseInt(text);
System.out.println("Converted number: " + number);
}

public static void handleException(String text) {


try {
int number = Integer.parseInt(text);
System.out.println("Converted number: " + number);
} catch (NumberFormatException e) {
System.out.println("Caught NumberFormatException: " + e.getMessage());
} catch (RuntimeException e) {
System.out.println("Caught RuntimeException: " + e.getMessage());
}
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter a number as text: ");


String input = scanner.next();

handleException(input);

scanner.close();
}
}

Output:
Enter a number as text: abc
Caught NumberFormatException: For input string: "abc"

8. Write a program to demonstrate ArrayIndexOutOfBoundsException.


import java.util.Scanner;

public class ArrayIndexOutOfBoundsDemo {

public static void generateException(String[] names) {


System.out.println("Accessing index 5: " + names[5]);
}

public static void handleException(String[] names) {


try {
System.out.println("Accessing index 5: " + names[5]);
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("Caught ArrayIndexOutOfBoundsException: " + e.getMessage());
} catch (RuntimeException e) {
System.out.println("Caught RuntimeException: " + e.getMessage());
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] names = new String[3];
System.out.println("Enter 3 names:");
for (int i = 0; i < names.length; i++) {
names[i] = scanner.next();
}
handleException(names);
scanner.close();
}
}
Output:
Enter 3 names:
Alice
Bob
Charlie
Caught ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 3
9. Write a program to convert the complete text to uppercase and compare the results.

import java.util.Scanner;

public class UpperCaseConversion {

public static String convertToUpper(String text) {


StringBuilder result = new StringBuilder();
for (int i = 0; i < text.length(); i++) {
char ch = text.charAt(i);
if (ch >= 'a' && ch <= 'z') {
result.append((char)(ch - 32));
} else {
result.append(ch);
}
}
return result.toString();
}

public static boolean compareStrings(String s1, String s2) {


if (s1.length() != s2.length()) {
return false;
}
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) != s2.charAt(i)) {
return false;
}
}
return true;
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);

System.out.print("Enter text: ");


String input = scanner.nextLine();

String userDefinedUpper = convertToUpper(input);


String builtInUpper = input.toUpperCase();

boolean areEqual = compareStrings(userDefinedUpper, builtInUpper);

System.out.println("\nUser-defined uppercase: " + userDefinedUpper);


System.out.println("Built-in uppercase : " + builtInUpper);
System.out.println("Are both equal? : " + areEqual);
scanner.close();
}
}

Output:
Enter text: Hello World 123

User-defined uppercase: HELLO WORLD 123


Built-in uppercase : HELLO WORLD 123
Are both equal? : true

10. Write a program to convert the complete text to lowercase and compare the results.

import java.util.Scanner;

public class LowerCaseConversion {

public static String convertToLower(String text) {


StringBuilder result = new StringBuilder();
for (int i = 0; i < text.length(); i++) {
char ch = text.charAt(i);
if (ch >= 'A' && ch <= 'Z') {
result.append((char)(ch + 32));
} else {
result.append(ch);
}
}
return result.toString();
}

public static boolean compareStrings(String s1, String s2) {


if (s1.length() != s2.length()) {
return false;
}
for (int i = 0; i < s1.length(); i++) {
if (s1.charAt(i) != s2.charAt(i)) {
return false;
}
}
return true;
}

public static void main(String[] args) {


Scanner scanner = new Scanner(System.in);
System.out.print("Enter text: ");
String input = scanner.nextLine();

String userDefinedLower = convertToLower(input);


String builtInLower = input.toLowerCase();

boolean areEqual = compareStrings(userDefinedLower, builtInLower);

System.out.println("\nUser-defined lowercase: " + userDefinedLower);


System.out.println("Built-in lowercase : " + builtInLower);
System.out.println("Are both equal? : " + areEqual);

scanner.close();
}
}

Output:
Enter text: HeLLo WorLD 123

User-defined lowercase: hello world 123


Built-in lowercase : hello world 123
Are both equal? : true.

You might also like