OneCompiler

ns23

118

Q1]

import java.util.Scanner;

class VowelPrinter extends Thread {
private String input;

public VowelPrinter(String input) {
    this.input = input;
}

@Override
public void run() {
    for (char ch : input.toCharArray()) {
        if (isVowel(ch)) {
            System.out.println(ch);
            try {
                Thread.sleep(3000); // Sleep for 3 seconds
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }
}

private boolean isVowel(char ch) {
    ch = Character.toUpperCase(ch);
    return ch == 'A' || ch == 'E' || ch == 'I' || ch == 'O' || ch == 'U';
}

}

public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a string: ");
String input = scanner.nextLine();

    VowelPrinter printer = new VowelPrinter(input);
    printer.start();

    scanner.close();
}

}

Q2]

import java.util.*;

public class StudentNames {
public static void main(String[] args) {

    if (args.length == 0) {
        System.out.println("Usage: java StudentNames <name1> <name2> ... <nameN>");
        return;
    }

   
    List<String> studentNames = new ArrayList<>();


    for (String name : args) {
        studentNames.add(name);
    }

    
    System.out.println("Student Names (using Iterator):");
    Iterator<String> iterator = studentNames.iterator();
    while (iterator.hasNext()) {
        System.out.println(iterator.next());
    }

  
    System.out.println("\nStudent Names (in reverse order using ListIterator):");
    ListIterator<String> listIterator = studentNames.listIterator(studentNames.size());
    while (listIterator.hasPrevious()) {
        System.out.println(listIterator.previous());
    }
}

}