Download as pdf or txt
Download as pdf or txt
You are on page 1of 69

JAVA PROGRAMMING (BCSE 2333)Lab File

Submitted By:- Meghna Gaur


Admission No. :- 20scse1010648

B.TECH

C.S.E

|||

SCHOOL OF COMPUTING SCIENCE AND ENGINEERING


INDEX

Exp No TOPIC Lab Experiments


1 Basic program a) Write a JAVA program to print “HelloWorld.”
b) WAP in java to print the values of variousprimitive
data types.
2 Operators WAP in java to demonstrate opratorprecendence.
3 Simple java class WAP in java to create a class Addition and a method add() to
add two numbers.
4 Command line argument Write a program that uses length property for displaying
any number of command line arguments.
5 Console Input(Scanner WAP in javato find the average of N numbers.
class)
6 Control Statement I WAP in java to find out the first N even numbers.
7 Control Statement II WAP in java to find out factorial of a number
8 Control Statement III WAP in java to find out the Fibonacci series
9 Arrays I WAP in java to sort elements in 1D array in ascending order.

10 Arrays II WAP in java to perform matrix addition using two 2D


arrays.
11 Strings I WAP in java to find out the number of characters in a
string.
12 Strings II WAP in java (i)find a character at a specific index in string.
(ii)to concatenate two strings (iii) to compare two strings
ignoring the cases.

13 Class,methods and objects Create a class Book with the following information.
Member variables : name (String), author (of the class
Author you have just created), price (double), and
qtyInStock (int)
[Assumption: Each book will be written by exactly one
Author]
Parameterized Constructor: To initialize the variables Getters
and Setters for all the member variables

In the main method, create a book object and print all details
of the book (including the author details)

14
15 Methods and OOPS I WAP in java that implements method overloading. 17. WAP
that shows passing object as parameter. 1
16 Methods and OOPS II WAP in java to show that the value of nonstatic
variable is not visible to all the instances, andtherefore
cannot be used to count the number ofinstances.
17 Constructor overloading Create a class Shape and override area() method to
calucate area of rectangle, square and circle
18 Static Keyword Create a class Student with non-static variable name
and static variable Course. Create 3 objects of class
,store and display information.
19 Access modifiers WAP in java to demonstrate the properties of public private
and protected variables and methods(with package).

20
21 Wrapper Class I WAP in javato show autoboxing and unboxing
22
23 Inheritence I a)Create a class named ‘Animal’ which includes methods
like eat() and sleep().

Create a child class of Animal named ‘Bird’ and override


the parent class methods. Add a new method named fly().

Create an instance of Animal class and invoke the eat and


sleep methods using this object.

Create an instance of Bird class and invoke the eat, sleep


and fly methods using this object.
Inheritance

24 Method overidding WAP that illustrates method overriding


25 Inheritence II a) WAP in java for abstract class to find areas of
different shapes.
b) Write an interface called Playable, with amethod
voidplay();
Let this interface be placed in a package called music.
Write a class called Veena which implements Playable
interface

26 Exception Handling I a) WAP in java demonstrating arithmetic exception and


ArrayOutOf Bounds Exception using try catch block b)WAP in
java to demonstrate the use of nested try
block and nested catch block.

27 Exception Handling II WAP in java to demonstrate the use of throw and throws

28 IO Stream I Write a program to count the number of times a character


appears in a File.
[Note : The character check is case insensitive... i.e, 'a' and 'A'
are considered to be the same]
29 IO Stream II Write a program to copy contents from one file to
another and check the output.
30 Multi Threading I WAP in java in two different ways that creates a thread by
(i)extending thread class(ii) implementing runnable interface
which displays 1st 10 natural numbers.
31 Multi Threading II WAP in java which demonstrate the lifecycle methods
of thread.
32 Collections I Create TreeSet, HashSet, LinkedHashSet. Add same integer
values in all three. Display all three set and note down the
difference.
33 Collections II WAP in java WAP in java and run applications that use
"List" Collection objects
34 Collections III Create a HashMap<Rollno, Name>. Display Map, take
rollno from user and display name.
35 JDBC I WAP to do CRUD operation in java
EXPERIMENT NO.1 (a)

CODE:
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}

Output

Hello, World!

EXPERIMENT NO.1 (b)

Primitive Data Types

1. boolean type

• The boolean data type has two possible values, either true or false.

• Default value: false.

• They are usually used for true/false conditions.

Example 1: Java boolean data type

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

boolean flag = true;


System.out.println(flag); // prints true
}
}
2. byte type

• The byte data type can have values from -128 to 127 (8-bit signed two's complement integer).

• If it's certain that the value of a variable will be within -128 to 127, then it is used instead of int to

save memory.

• Default value: 0

Example 2: Java byte data type

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

byte range;
range = 124;
System.out.println(range); // prints 124
}
}

3. short type

• The short data type in Java can have values from -32768 to 32767 (16-bit signed two's

complement integer).

• If it's certain that the value of a variable will be within -32768 and 32767, then it is used instead of

other integer data types (int, long).

• Default value: 0

Example 3: Java short data type

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

short temperature;
temperature = -200;
System.out.println(temperature); // prints -200
}
}

4. int type

• The int data type can have values from -231 to 231-1 (32-bit signed two's complement integer).

• If you are using Java 8 or later, you can use an unsigned 32-bit integer. This will have a minimum

value of 0 and a maximum value of 232-1. To learn more, visit How to use the unsigned integer in

java 8?

• Default value: 0

Example 4: Java int data type

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

int range = -4250000;


System.out.println(range); // print -4250000
}
}

5. long type

• The long data type can have values from -263 to 263-1 (64-bit signed two's complement integer).
• If you are using Java 8 or later, you can use an unsigned 64-bit integer with a minimum value

of 0 and a maximum value of 264-1.

• Default value: 0

Example 5: Java long data type

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

long range = -42332200000L;


System.out.println(range); // prints -42332200000
}
}

Notice, the use of L at the end of -42332200000. This represents that it's an integer of the long type.

6. double type

• The double data type is a double-precision 64-bit floating-point.

• It should never be used for precise values such as currency.

• Default value: 0.0 (0.0d)

Example 6: Java double data type

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

double number = -42.3;


System.out.println(number); // prints -42.3
}
}
7. float type

• The float data type is a single-precision 32-bit floating-point. Learn more about single-precision

and double-precision floating-point if you are interested.

• It should never be used for precise values such as currency.

• Default value: 0.0 (0.0f)

Example 7: Java float data type

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

float number = -42.3f;


System.out.println(number); // prints -42.3
}
}

Notice that we have used -42.3f instead of -42.3in the above program. It's because -42.3 is

a double literal.

To tell the compiler to treat -42.3 as float rather than double, you need to use f or F.

If you want to know about single-precision and double-precision, visit Java single-precision and double-

precision floating-point.

8. char type

• It's a 16-bit Unicode character.


• The minimum value of the char data type is '\u0000' (0) and the maximum value of the is '\uffff'.

• Default value: '\u0000'

Example 8: Java char data type

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

char letter = '\u0051';


System.out.println(letter); // prints Q
}
}
EXPERIMENT NO.2

classPrecedence {
publicstaticvoidmain(String[] args) {

int a = 10, b = 5, c = 1, result;


result = a-++c-++b;

System.out.println(result);
}
}

Output:

2
EXPERIMENT NO.3

import java.util.Scanner;
public class IntegerSumExample2
{
public static void main(String[] args)
{
System.out.println("Enter the Two numbers for addtion: ");
Scanner readInput = new Scanner(System.in);
int a = readInput.nextInt();
int b = readInput.nextInt();
readInput.close();
System.out.println("The sum of a and b is = " + Integer.sum(a, b));
}
}

Output:

Enter the Two numbers for addtion:


3435
2865
The sum of a and b is = 6300
EXPERIMENT NO.4

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

for(int i=0;i<args.length;i++)
System.out.println(args[i]);

}
}

Output: sonoo
jaiswal
1
3
abc
EXPERIMENT NO.5

import static java.lang.Float.sum;


import java.util.Scanner;
public class Average {
public static void main(String[] args)
{
int n, count = 1;
float xF, averageF, sumF = 0;
Scanner sc = new Scanner(System.in);
System.out.println("Enter the value of n");
n = sc.nextInt();
while (count <= n)
{
System.out.println("Enter the "+count+" number?");
xF = sc.nextInt();
sumF += xF;
++count;
}
averageF = sumF/n;
System.out.println("The Average is"+averageF);
}
}

Output:

Enter the value of n


5
Enter the 1 number?
1
Enter the 2 number?
2
Enter the 3 number?
3
Enter the 4 number?
4
Enter the 5 number?
5
The Average is 3.0
EXPERIMENT NO.6
public class DisplayEvenNumbersExample1
{
public static void main(String args[])
{
int number=100;
System.out.print("List of even numbers from 1 to "+number+": ");
for (int i=1; i<=number; i++)
{
if (i%2==0)
{
System.out.print(i + " ");
} } } }

Output:

List of even numbers from 1 to 100: 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58


60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100
List of even numbers:
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80
82 84 86 88 90 92 94 96 98 100

EXPERIMENT NO.7
class FactorialExample{
public static void main(String args[]){
int i,fact=1;
int number=5;//It is the number to calculate factorial
for(i=1;i<=number;i++){
fact=fact*i;
}
System.out.println("Factorial of "+number+" is: "+fact);
}
}

Output:

Factorial of 5 is: 120

EXPERIMENT NO.8
class FibonacciExample2
{
static int n1=0,n2=1,n3=0;
static void printFibonacci(int count)
{
if(count>0)
{
n3 = n1 + n2;
n1 = n2;
n2 = n3;
System.out.print(" "+n3);
printFibonacci(count-1);
}
}
public static void main(String args[]){
int count=10;
System.out.print(n1+" "+n2);
printFibonacci(count-2);
}
}

Output:

0 1 1 2 3 5 8 13 21 34

EXPERIMENT NO.9
public class SortAsc
{
public static void main(String[] args)
{
int [] arr = new int [] {5, 2, 8, 7, 1};
int temp = 0;
System.out.println("Elements of original array: ");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
} for (int i = 0; i < arr.length; i++) {
for (int j = i+1; j < arr.length; j++) {
if(arr[i] > arr[j]) {
temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
}
System.out.println();
System.out.println("Elements of array sorted in ascending order: ");
for (int i = 0; i < arr.length; i++)
{
System.out.print(arr[i] + " ");
}
}
}

Output:

Elements of original array:


52871
Elements of array sorted in ascending order:
12578
EXPERIMENT NO.10
public class MatrixAdditionExample
{
public static void main(String args[])
{
int a[][]={{1,3,4},{2,4,3},{3,4,5}};
int b[][]={{1,3,4},{2,4,3},{1,2,4}};
int c[][]=new int[3][3];

for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
c[i][j]=a[i][j]+b[i][j];
System.out.print(c[i][j]+" ");
}
System.out.println();//new line
}
}

Output:

268
486
469

EXPERIMENT NO.10
public class MatrixAdditionExample
{
public static void main(String args[])
{

int a[][]={{1,3,4},{2,4,3},{3,4,5}};
int b[][]={{1,3,4},{2,4,3},{1,2,4}};
int c[][]=new int[3][3];
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
c[i][j]=a[i][j]+b[i][j];
System.out.print(c[i][j]+" ");
}
System.out.println();
}
}

Output:

268
486
469

EXPERIMENT NO.11
public class CountCharacter
{
public static void main(String[] args)
{
String string = "The best of both worlds";
int count = 0;
for(int i = 0; i < string.length(); i++)
{
if(string.charAt(i) != ' ')
count++;
}
System.out.println("Total number of characters in a string: " + count);
}
}

Output:

Total number of characters in a string: 19

EXPERIMENT NO.12
classGFG
{
staticbooleanequalIgnoreCase(String str1, String str2)
{
inti = 0;
intlen1 = str1.length();
intlen2 = str2.length();
if(len1 != len2)
returnfalse;
while(i< len1)
{
if(str1.charAt(i) == str2.charAt(i))
{
i++;
}

elseif(!((str1.charAt(i) >= 'a'&& str1.charAt(i) <= 'z')


|| (str1.charAt(i) >= 'A'&& str1.charAt(i) <= 'Z')))
{
returnfalse;
}

elseif(!((str2.charAt(i) >= 'a'&& str2.charAt(i) <= 'z')


|| (str2.charAt(i) >= 'A'&& str2.charAt(i) <= 'Z')))
{
returnfalse;
}

else
{

if(str1.charAt(i) >= 'a'&& str1.charAt(i) <= 'z')


{
if(str1.charAt(i) - 32!= str2.charAt(i))
returnfalse;
}

elseif(str1.charAt(i) >= 'A'&& str1.charAt(i) <= 'Z')


{
if(str1.charAt(i) + 32!= str2.charAt(i))
returnfalse;
}
i++;

}
returntrue;

staticvoidequalIgnoreCaseUtil(String str1, String str2)


{
booleanres = equalIgnoreCase(str1, str2);

if(res == true)
System.out.println( "Same");

else
System.out.println( "Not Same");
}

publicstaticvoidmain(String args[])
{
String str1, str2;

str1 = "Geeks";
str2 = "geeks";
equalIgnoreCaseUtil(str1, str2);

str1 = "Geek";
str2 = "geeksforgeeks";
equalIgnoreCaseUtil(str1, str2);
}
}

Output:

EXPERIMENT NO.13
package database;

public class Book

public String title;

public String author;

public int year;

public String publisher;

public double cost;

public Book(String title,Stringauthor,intyear,Stringpublisher,double cost)

this.title=title;

this.author=author;

this.year=year;

this.publisher=publisher;

this.cost=cost;

public String getTitle()

return title;

public String getAuthor()

return author;

public int getYear()

return year;

public String getPublisher()

{
return publisher;

public double getCost()

return cost;

public void setTitle(String title)

this.title=title;

public void setAuthor(String author)

this.author=author;

public void setYear(int year)

this.year=year;

public void setPublisher(String publisher)

this.publisher=publisher;

public void setCost(double cost)

this.cost=cost;

public String toString()

return "The details of the book are: " + title + ", " + author + ", " + year + ", " + publisher + ", " + cost;

}}

EXPERIMENT NO.15
public class Box
{
int length,breadth,height;
Box()
{
length=breadth=height=2;
System.out.println("Intialized with default constructor");
}

Box(int l, int b)
{
length=l; breadth=b; height=2;
System.out.println("Initialized with parameterized constructor having 2 params");

Java Lab Manual Page 7

Box(int l, int b, int h)


{
length=l; breadth=b; height=h;
System.out.println("Initialized with parameterized constructor having 3 params");

public int getVolume()


{
return length*breadth*height;
}

public static void main(String args[])


{
Box box1 = new Box();
System.out.println("The volume of Box 1 is :"+ box1.getVolume());

Box box2 = new Box(10,20);


System.out.println("Volume of Box 2 is :" + box2.getVolume());

Box box3 = new Box(10,20,30);


System.out.println("Volume of Box 3 is :" + box3.getVolume());}}

EXPERIMENT NO.16
class variable {
int number;
public static void increment()
{
number++;
}
}
class StaticExample {
public static void main(String args[])
{
variable var1 = new variable();
variable var2 = new variable();
variable var3 = new variable();
var1.number = 12;
var2.number = 13;
var3.number = 14;
variable.increment();
System.out.println(var1.number);
System.out.println(var2.number);
System.out.println(var3.number);
}
}

Output:
EXPERIMENT NO.17

class OverloadDemo

void area(float x)

System.out.println("the area of the square is "+Math.pow(x, 2)+" sq units");

void area(float x, float y)

System.out.println("the area of the rectangle is "+x*y+" sq units");

void area(double x)

double z = 3.14 * x * x;

System.out.println("the area of the circle is "+z+" sq units");

class Overload

public static void main(String args[])

OverloadDemoob = new OverloadDemo();

ob.area(5);

ob.area(11,12);
ob.area(2.5);

Output-
EXPERIMENT NO.18

class Student{
int rollno;//instance variable
String name;
static String college ="ITS";//static variable
Student(int r, String n){
rollno = r;
name = n;
}

void display (){System.out.println(rollno+" "+name+" "+college);}


}
public class TestStaticVariable1{
public static void main(String args[]){
Student s1 = new Student(111,"Karan");
Student s2 = new Student(222,"Aryan");
s1.display();
s2.display();
}
}

Output:

111 Karan ITS


222 Aryan ITS
EXPERIMENT NO.19

Private access modifier

The scope of private modifier is limited to the class only.

1. Private Data members and methods are only accessible within the class
2. Class and Interface cannot be declared as private
3. If a class has private constructor then you cannot create the object of that class
from outside of the class.

Let’s see an example to understand this:

Private access modifier example in java

This example throws compilation error because we are trying to access the private data
member and method of class ABC in the class Example. The private data member and method
are only accessible within the class.

class ABC{
privatedoublenum=100;
privateint square(int a){
return a*a;
}
}
publicclassExample{
publicstaticvoid main(Stringargs[]){
ABC obj=new ABC();
System.out.println(obj.num);
System.out.println(obj.square(10));
}
}

Output:

Compile- time error

Protected Access Modifier

Protected data member and method are only accessible by the classes of the same package
and the subclasses present in any package. You can also say that the protected access
modifier is similar to default access modifier with one exception that it has visibility in sub
classes.
Classes cannot be declared protected. This access modifier is generally used in a parent child
relationship.

Protected access modifier example in Java

In this example the class Test which is present in another package is able to call
the addTwoNumbers() method, which is declared protected. This is because the Test class
extends class Addition and the protected modifier allows the access of protected members in
subclasses (in any packages).
Addition.java

packageabcpackage;
publicclassAddition{

protectedintaddTwoNumbers(int a,int b){


returna+b;
}
}

Test.java

packagexyzpackage;
importabcpackage.*;
classTestextendsAddition{
publicstaticvoid main(Stringargs[]){
Testobj=newTest();
System.out.println(obj.addTwoNumbers(11,22));
}
}

Output:

33
EXPERIMENT NO.21

class BoxingExample1
{
public static void main(String args[])
{
int a=50;
Integer a2=new Integer(a);
Integer a3=5
System.out.println(a2+" "+a3);
}
}

Output-

Output:50 5
EXPERIMENT NO.23

class Animal

public void eat()

System.out.println("eat method");

public void sleep()

System.out.println("sleep method");

class Bird extends Animal

public void eat()

super.eat();

System.out.println("overide eat");

public void sleep()

super.sleep();

System.out.println("override sleep");

}
public void fly()

System.out.println("in fly method");

class Animals

public static void main(String[] args)

Animal a =new Animal();

Bird b = new Bird();

a.eat();

a.sleep();

b.eat();

b.sleep();

b.fly();

}
EXPERIMENT NO.24

class Vehicle
{
void run(){System.out.println("Vehicle is running");}
}

class Bike2 extends Vehicle{


void run(){System.out.println("Bike is running safely");}
public static void main(String args[]){
Bike2 obj = new Bike2();
obj.run();
}
}

Output:

Bike is running safely


EXPERIMENT NO.25(a)

import java.util.*;
abstract class Diagram
{
private int d1,d2;
abstract public void areaCalculation();
public void readData()
{
Scanner sin=new Scanner(System.in);
System.out.println("Enter two dimensions:");
d1=sin.nextInt();
d2=sin.nextInt();
}
public void displayData()
{
System.out.println("D1:"+d1+"\nD2:"+d2);
}
public int getD1()
{
return d1;
}
public int getD2()
{
return d2;
}
}
class Rectangle extends Diagram
{
private int area;
public void areaCalculation()
{
int x=super.getD1();
int y=super.getD2();
area=x*y;
}
public void displayData()
{
super.displayData();
System.out.println("Area:"+area);
}
}
class Triangle extends Diagram
{
private int area;
public void areaCalculation()
{
int x=super.getD1();
int y=super.getD2();
area=(1/2)*x*y;
}
public void displayData()
{
super.displayData();
System.out.println("Area:"+area);
}

}
class Ellipse extends Diagram
{
private int area;
public void areaCalculation()
{
int x=super.getD1();
int y=super.getD2();
area=(1/2)*x*y;
}
public void displayData()
{
super.displayData();
System.out.println("Area:"+area);
}
}
public class Draw
{
public static void main(String args[])
{
Scanner sin=new Scanner(System.in);
Diagram d1;
int ch;
do
{
System.out.println("1.RECTANGLE(default)");
System.out.println("2.TRIANGLE");
System.out.println("3.ELLIPSE");
System.out.print("Enter ur choice:");
ch=sin.nextInt();
switch(ch)
{
case 1:
d1=new Rectangle();
break;
case 2:
d1=new Triangle();
break;
case 3:
d1=new Ellipse();
break;
default :
d1=new Rectangle();
System.out.println("Enter correct Choice");
break;
}
d1.readData();
d1.areaCalcultion();
d2.displayData();
System.out.print("Do u want to continue(y-1)(n-0):");
ch=sin.nextInt();
}while(ch==1);
}
}

EXPERIMENT NO.25(b)

package live;

import music.Playable;

import music.string.Veena;

import music.wind.Saxophone;

public class Test {

public static void main (String[]args) {

Veena v = new Veena();

v.play();

Playable pv = new Veena();

pv.play();

Saxophone s = new Saxophone();

s.play();
Playable ps= new Saxophone();

ps.play();

package music;

public interface Playable {

void play();

package music.string;

import music.Playable;

public class Veena implements Playable {

public void play() {

System.out.println("Veena Plays");

package music.wind;

import music.Playable;

public class Saxophone implements Playable{

public void play() {

System.out.println("SaxophonePlays");

}}
EXPERIMENT NO.26(a)

classExample1
{
publicstaticvoid main(Stringargs[])
{
int num1, num2;
try
{

num1 = 0;
num2 = 62 / num1;
System.out.println(num2);
System.out.println("Hey I'm at the end of try block");
}
catch (ArithmeticException e)
{

System.out.println("You should not divide a number by zero");


}
catch (Exception e) {

System.out.println("Exception occurred");
}
System.out.println("I'm out of try-catch block in Java.");
}
}

Output:

You should not divide a number by zero


I'm out of try-catch block in Java.
EXPERIMENT NO.26(b)

public class NestedTryBlock2


{
public static void main(String args[])
{
try {
try {
try {
int arr[] = { 1, 2, 3, 4 };
System.out.println(arr[10]);
}
catch (ArithmeticException e) {
System.out.println("Arithmetic exception");
System.out.println(" inner try block 2");
}
}
catch (ArithmeticException e) {
System.out.println("Arithmetic exception");
System.out.println("inner try block 1");
}
}
catch (ArrayIndexOutOfBoundsException e4) {
System.out.print(e4);
System.out.println(" outer (main) try block");
}
catch (Exception e5) {
System.out.print("Exception");
System.out.println(" handled in main try-block");
}
}
}
Output:
EXPERIMENT NO.27

class Main

public static void divideByZero()

throw new ArithmeticException("Trying to divide by 0");

public static void main(String[] args)

divideByZero();

Output-
EXPERIMENT NO.28

public class CountCharacters

public void countChars(String message)

Map<Character, Integer>numCharMap = new HashMap<Character, Integer>();

for(int i = 0; i<message.length(); i++){

char c = message.charAt(i);

if(c == ' ')

continue;

if(numCharMap.containsKey(c)){

numCharMap.put(c, numCharMap.get(c) + 1);

Else

numCharMap.put(c, 1);

Set<Map.Entry<Character, Integer>>numSet = numCharMap.entrySet();

for(Map.Entry<Character, Integer> m : numSet){

System.out.println("Char- " + m.getKey() + " Count " + m.getValue());

}
public static void main(String[] args)

CountCharacters cc = new CountCharacters();

cc.countChars("I am an Indian");

Output-
EXPERIMENT NO.29

import java.io.*;

import java.util.*;

public class CopyFromFileaToFileb

public static void copyContent(File a, File b)

throws Exception

FileInputStream in = new FileInputStream(a);

FileOutputStream out = new FileOutputStream(b);

Try

int n;

while ((n = in.read()) != -1) {

out.write(n);

Finally

if (in != null)

in.close();

if (out != null) {
out.close();

System.out.println("File Copied");

public static void main(String[] args) throws Exception

Scanner sc = new Scanner(System.in);

System.out.println( "Enter the source filename from where you have to read/copy :");

String a = sc.nextLine();

File x = new File(a);

System.out.println( "Enter the destination filename where you have to write/paste :");

String b = sc.nextLine();

File y = new File(b);

copyContent(x, y);

Output-
EXPERIMENT NO.30

class MyThread implements Runnable

String name;

Thread t;

MyThread (String thread)

name = threadname;

t = new Thread(this, name);

System.out.println("New thread: " + t);

t.start();

public void run() {

try {

for(int i = 5; i> 0; i--)


{

System.out.println(name + ": " + i);

Thread.sleep(1000);

catch (InterruptedException e)

System.out.println(name + "Interrupted");

System.out.println(name + " exiting.");

class MultiThread

public static void main(String args[])

new MyThread("One");

new MyThread("Two");

new NewThread("Three");

try {

Thread.sleep(10000);

catch (InterruptedException e) {

System.out.println("Main thread Interrupted");


}

System.out.println("Main thread exiting.");

Output-
EXPERIMENT NO.31

class ABC implements Runnable

public void run()

try

Thread.sleep(100);

catch (InterruptedExceptionie)

ie.printStackTrace();

System.out.println("The state of thread t1 while it invoked the method join() on thread t2 -"+
ThreadState.t1.getState());

try

Thread.sleep(200);

catch (InterruptedExceptionie)

ie.printStackTrace();

}
public class ThreadState implements Runnable

public static Thread t1;

public static ThreadStateobj;

public static void main(String argvs[])

obj = new ThreadState();

t1 = new Thread(obj);

System.out.println("The state of thread t1 after spawning it - " + t1.getState());

t1.start();

System.out.println("The state of thread t1 after invoking the method start() on it - " + t1.getState());

public void run()

ABC myObj = new ABC();

Thread t2 = new Thread(myObj);

System.out.println("The state of thread t2 after spawning it - "+ t2.getState());

t2.start();

System.out.println("the state of thread t2 after calling the method start() on it - " + t2.getState());

try

Thread.sleep(200);

}
catch (InterruptedExceptionie)

ie.printStackTrace();

System.out.println("The state of thread t2 after invoking the method sleep() on it - "+ t2.getState() );

try

t2.join();

catch (InterruptedExceptionie)

ie.printStackTrace();

System.out.println("The state of thread t2 when it has completed it's execution - " + t2.getState());

} }

Output-
EXPERIMENT NO.32

package my.app;

import org.openjdk.jmh.annotations.Benchmark;

import org.openjdk.jmh.runner.Runner;

import org.openjdk.jmh.runner.RunnerException;

import org.openjdk.jmh.runner.options.Options;

import org.openjdk.jmh.runner.options.OptionsBuilder;

import java.util.Comparator;

import java.util.HashSet;

import java.util.LinkedHashSet;

import java.util.Random;

import java.util.Set;

import java.util.TreeSet;

public class DeduplicationWithSetsBenchmark {

static Item[] inputData = makeInputData();

public int deduplicateWithHashSet() {

return deduplicate(new HashSet<>());

public int deduplicateWithLinkedHashSet() {

return deduplicate(new LinkedHashSet<>());

public int deduplicateWithTreeSet() {

return deduplicate(new TreeSet<>(Item.comparator()));

}
private int deduplicate(Set<Item> set)

for (Item i : inputData)

set.add(i);

return set.size();

public static void main(String[] args) throws RunnerException

DeduplicationWithSetsBenchmark x = new DeduplicationWithSetsBenchmark();

int count = x.deduplicateWithHashSet();

assert(count <inputData.length);

assert(count == x.deduplicateWithLinkedHashSet());

assert(count == x.deduplicateWithTreeSet());

Options opt = new OptionsBuilder()

.include(DeduplicationWithSetsBenchmark.class.getSimpleName())

.forks(1)

.build();

new Runner(opt).run();
}

private static Item[] makeInputData() {

int count = 1000000;

Item[] acc = new Item[count];

Random rnd = new Random();

for (int i=0; i<count; i++) {

Item item = new Item();

// We are looking to include a few collisions, so restrict the space of the values

item.name = "the item name " + rnd.nextInt(100);

item.id = rnd.nextInt(100);

acc[i] = item;

return acc;

private static class Item {

public String name;

public int id;

public String getName() {

return name;

}
public int getId() {

return id;

public boolean equals(Object obj) {

Item other = (Item) obj;

return name.equals(other.name) && id == other.id;

public int hashCode()

return name.hashCode() * 13 + id;

static Comparator<Item> comparator()

return Comparator.comparing(Item::getName, Comparator.naturalOrder())

.thenComparing(Item::getId, Comparator.naturalOrder());

}
EXPERIMENT NO.33

import java.util.*;

public class ArrayListExample1

public static void main(String args[])

ArrayList<String> list=new ArrayList<String>();

list.add("Mango");

list.add("Apple");

list.add("Banana");

list.add("Grapes");

System.out.println(list);

Output-
EXPERIMENT NO.34

import java.util.*;

import java.io.*;

public class CustomKeyObject

public static class Student

private int rollno;

private String name;

public Student(int rollno, String name)

this.rollno = rollno;

this.name = name;

public String getname()

return this.name;

public int getmarks()

return this.rollno;
}

public void setname(String name)

this.name = name;

public void setmarks(int rollno)

this.rollno = rollno;

public int hashCode()

final int temp = 14;

int ans = 1;

ans = temp * ans + rollno;

return ans;

public boolean equals(Object o)

if (this == o) {

return true;

if (o == null) {
return false;

if (this.getClass() != o.getClass()) {

return false;

Student other = (Student)o;

if (this.rollno != other.rollno) {

return false;

return true;

public static void main(String[] args) throws NumberFormatException, IOException

HashMap<Student, String> map = new HashMap<>();

Student one = new Student(1, "Geeks1"); // key1

Student two = new Student(2, "Geeks2"); // key2

map.put(one, one.getname());

map.put(two, two.getname());

one.setname("Not Geeks1");

two.setname("Not Geeks2");

System.out.println(map.get(one));

System.out.println(map.get(two));
Student three = new Student(1, "Geeks3");

System.out.println(map.get(three)) }}

Output-
EXPERIMENT NO.35

import java.util.*;

import java.sql.*;

public class EmpDao

public static Connection getConnection()

Connection con=null;

Try

Class.forName("oracle.jdbc.driver.OracleDriver");

con=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe","system","oracle");

catch(Exception e){System.out.println(e);}

return con;

public static int save(Emp e)

int status=0;

try

Connection con=EmpDao.getConnection();

PreparedStatementps=con.prepareStatement( "insert into user905(name,password,email,country)


values

(?,?,?,?)");
ps.setString(1,e.getName());

ps.setString(2,e.getPassword());

ps.setString(3,e.getEmail());

ps.setString(4,e.getCountry());

status=ps.executeUpdate();

con.close();

catch(Exception ex){ex.printStackTrace();

return status;

public static int update(Emp e)

int status=0;

try

Connection con=EmpDao.getConnection();

PreparedStatementps=con.prepareStatement( "update user905 set


name=?,password=?,email=?,country=?

where id=?");

ps.setString(1,e.getName());

ps.setString(2,e.getPassword());

ps.setString(3,e.getEmail());

ps.setString(4,e.getCountry());

ps.setInt(5,e.getId());
status=ps.executeUpdate();

con.close();

catch(Exception ex){ex.printStackTrace();}

return status;

public static int delete(int id){

int status=0;

try

Connection con=EmpDao.getConnection();

PreparedStatementps=con.prepareStatement("delete from user905 where id=?");

ps.setInt(1,id);

status=ps.executeUpdate();

con.close();

catch(Exception e){e.printStackTrace();

return status;

public static Emp getEmployeeById(int id)

{
Emp e=new Emp();

try{

Connection con=EmpDao.getConnection();

PreparedStatementps=con.prepareStatement("select * from user905 where id=?");

ps.setInt(1,id);

ResultSetrs=ps.executeQuery();

if(rs.next()){

e.setId(rs.getInt(1));

e.setName(rs.getString(2));

e.setPassword(rs.getString(3));

e.setEmail(rs.getString(4));

e.setCountry(rs.getString(5));

con.close();

}catch(Exception ex){ex.printStackTrace();}

return e;

public static List<Emp>getAllEmployees(){

List<Emp> list=new ArrayList<Emp>();

try{

Connection con=EmpDao.getConnection();

PreparedStatementps=con.prepareStatement("select * from user905");


ResultSetrs=ps.executeQuery();

while(rs.next()){

Emp e=new Emp();

e.setId(rs.getInt(1));

e.setName(rs.getString(2));

e.setPassword(rs.getString(3));

e.setEmail(rs.getString(4));

e.setCountry(rs.getString(5));

list.add(e);

con.close();

catch(Exception e){e.printStackTrace();

return list;

You might also like