Showing posts with label Java tutorials. Show all posts
Showing posts with label Java tutorials. Show all posts

Saturday, March 12, 2016

How to create LinkList in java

Linked list is data Structure which contain linear collection of data elements as Node in such way that every node refer to next node in List.Here in java let us create class node which contain integer data and reference to the next node in Link list.

This is class Node which is in file Node.java

public class Node
{
protected int data;
    protected Node link;

    //  Constructor to class Node with initially refer to null and set data to 0 by default
    public Node()
    {
        link = null;
        data = 0;
    }  
    //  Constructor to class Node which has both data and reference to next node
    public Node(int d,Node n)
    {
        data = d;
        link = n;
    }  
    //  Function that set link to next Node (which refer to next node
    public void setLink(Node n)
    {
        link = n;
    }  
    //  Function which assign integer  data to current Node
    public void setData(int d)
    {
        data = d;
    }  
    /*  Function to get link to next node  */
    public Node getLink()
    {
        return link;
    }  
    /*  Function to get data from current Node  */
    public int getData()
    {
        return data;
    }
}


Class LinkedList  in which  methods involved in it. Linkedlist.java file

import java.util.Scanner;

public class Linkedlist
{
protected Node start;
   protected Node end ;
   public int size ;
public Scanner sc;

   /*  Constructor  */
   public Linkedlist()
   {
       start = null;
       end = null;
       size = 0;
   }
   /*  Function to check if list is empty  */
   public boolean isEmpty()
   {
       return start == null;
   }
   /*  Function to get size of list  */
   public int getSize()
   {
       return size;
   }  
   /*  Function to insert an element at begining  */
   public void insertAtStart(int val)
   {
       Node nptr = new Node(val, null);  
       size++ ;  
       if(start == null)
       {
           start = nptr;
           end = start;
       }
       else
       {
           nptr.setLink(start);
           start = nptr;
       }
   }
   /*  Function to insert an element at end  */
   public void insertAtEnd(int val)
   {
       Node nptr = new Node(val,null);  
       size++ ;  
       if(start == null)
       {
           start = nptr;
           end = start;
       }
       else
       {
           end.setLink(nptr);
           end = nptr;
       }
   }
   /*  Function to insert an element at position  */
   public void insertAtPos(int val , int pos)
   {
       Node nptr = new Node(val, null);              
       Node ptr = start;
       pos = pos - 1 ;
       for (int i = 1; i < size; i++)
       {
           if (i == pos)
           {
               Node tmp = ptr.getLink() ;
               ptr.setLink(nptr);
               nptr.setLink(tmp);
               break;
           }
           ptr = ptr.getLink();
       }
       size++ ;
   }
   /*  Function to delete an element at position  */
   public void deleteAtPos(int pos)
   {      
       if (pos == 1)
       {
           start = start.getLink();
           size--;
           return ;
       }
       if (pos == size)
       {
           Node s = start;
           Node t = start;
           while (s != end)
           {
               t = s;
               s = s.getLink();
           }
           end = t;
           end.setLink(null);
           size --;
           return;
       }
       Node ptr = start;
       pos = pos - 1 ;
       for (int i = 1; i < size - 1; i++)
       {
           if (i == pos)
           {
               Node tmp = ptr.getLink();
               tmp = tmp.getLink();
               ptr.setLink(tmp);
               break;
           }
           ptr = ptr.getLink();
       }
       size-- ;
}
public void reverse(){

Linkedlist newList = new Linkedlist();
Node node = start;
for(int i=0; i newList.insertAtStart(node.getData());
node = node.getLink();
}
//Update the start and end of the original list
start = newList.start;
end = newList.end;
}

public void findelement(){

System.out.println("enter a element u wanted to know position");
Linkedlist l = new Linkedlist();
Node n = start;
sc = new Scanner(System.in);
int i = sc.nextInt();
int a=1;

while(i!=n.getData()){
a++;
if(n.getLink() == null)
{
System.out.println("Count not find element " + i + " in the list");
return;
}
n=n.getLink();
}
System.out.println("index is " +a);
}

public void display(){
System.out.println("single linked list is +  ");
if(size==0){
System.out.println("empty linklist");
}

if(start.getLink()==null){
System.out.println(start.getData() );
        return;
}
Node ptr = start;
    System.out.print(start.getData()+ "->");
    ptr = start.getLink();
    while (ptr.getLink() != null)
    {
        System.out.print(ptr.getData()+ "->");
        ptr = ptr.getLink();
    }
    System.out.print(ptr.getData()+ "\n");
}
}

This is a main program which involve  execution of main method and calls the method of Linkedlist class.

import java.util.Scanner;
public class singlelist {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Linkedlist list = new Linkedlist();
System.out.println("Single linkedlist display");
char ch;
do
       {
           System.out.println("\nSingly Linked List Operations\n");
           System.out.println("1. insert at begining");
           System.out.println("2. insert at end");
           System.out.println("3. insert at position");
           System.out.println("4. delete at position");
           System.out.println("5. check empty");
           System.out.println("6. get size");
           System.out.println("7. reverse list");
           System.out.println("8. tacke element");
           int choice = sc.nextInt();            
           switch (choice)
           {
           case 1 : 
               System.out.println("Enter integer element to insert");
               list.insertAtStart( sc.nextInt() );                     
               break;                          
           case 2 : 
               System.out.println("Enter integer element to insert");
               list.insertAtEnd( sc.nextInt() );                     
               break;                         
           case 3 : 
               System.out.println("Enter integer element to insert");
               int num = sc.nextInt() ;
               System.out.println("Enter position");
               int pos = sc.nextInt() ;
               if (pos <= 1 || pos > list.getSize() )
                   System.out.println("Invalid position\n");
               else
                   list.insertAtPos(num,pos);
               break;                                          
           case 4 : 
               System.out.println("Enter position");
               int p = sc.nextInt() ;
               if (p < 1 || p > list.getSize() )
                   System.out.println("Invalid position\n");
               else
                   list.deleteAtPos(p);
               break;
           case 5 : 
               System.out.println("Empty status = "+ list.isEmpty());
               break;                   
           case 6 : 
               System.out.println("Size = "+ list.getSize() +" \n");
               break;                         
           case 7 :
            list.reverse();
            System.out.println("reverse linked list = " + list);
            break;
           case 8:
            list.findelement();
            break;
           default : 
               System.out.println("Wrong Entry \n ");
               break;   
           }
           /*  Display List  */ 
           list.display();
           System.out.println("\nDo you want to continue (Type y or n) \n");
           ch = sc.next().charAt(0);                        
       } while (ch == 'Y'|| ch == 'y'); 
}







Sorting an array with N2 (insertion sort Algorithm)

Here is program which allow you to sort an array with  complexity of (n square) in ascending order Here is the program: here it uses 2 for loop to compare
Example:- Program

import java.util.Scanner;
public class inertsort {

public static void main(String[] args) {
int i;
Scanner sc = new Scanner(System.in);
System.out.println("enter how much element u want in array ");
i=sc.nextInt();
int intsort[] = new int[i];
System.out.println("enter element s");
for(int a=0;a intsort[a]=sc.nextInt();
}
System.out.println("Elements in array are ");
for(int a=0;a System.out.print(" "+intsort[a]);
}

for(int m =1;m int temp;
for(int n=m;n>0;n--){
{
if(intsort[n] temp=intsort[n];
intsort[n]=intsort[n-1];
intsort[n-1]=temp;
}
}
}
}
System.out.println("Elements in array are ");
for(int a=0;a System.out.print(" "+intsort[a]);
}

}
}

Output:
enter how much element u want in array 
5
enter element s
100
77
55
85
91
Elements in array are 
 100 77 55 85 91Elements in array are 
 55 77 85 91 100

Saturday, February 27, 2016

String In java

What is String Class in Java ?

  • String class represent character string. All string in  java implemented as instance of class.
  • String class is an Immutable java class It can not be modified and it uses string table.
  • String class in java is one which is used most.
There are various methods in string class which are used to manipulate string. String Class possess eleven constructor which allow you to manipulate string.

Simple way to create string in java.

String s="Welcome to my Blog"; //String s contains Welcome to my Blog 

Few methods of String Class are as follows:-
  • Char CharAt(int index) :- Returns a character at specified index.
  • int indexOf(char ch):- Returns index of first occurrence of  specified character.
  • int compareTo(object o):- compare string with another object.
  • int length():- Returns length of string.
  • String toLowerCase(): Converts all the character of string to lower case.
String example: Some methods of string class:

If you have More time there is a video  you can look and learn from it 

For  video in Hind  language click here

Program:
package xyz;
public class stringexp {

public static void main(String[] args) {
String s1="Welcome to Java";
  String s2 = s1;
String s3 = new String("Welcome to Java");
String s4 = "Welcome to Java";
System.out.println("this are four strings"+"\n"+s1+"\n"+s2+"\n"+s3+"\n"+s4);
System.out.println("s1==s2:"+s1==s2);
 System.out.println("s2==s3:"+s2==s3);
System.out.println("s1.equals(s2):"+s1.equals(s2));
System.out.println("s2.equals(s3):"+s2.equals(s3));
System.out.println(" s1.compareTo(s2): " +s1.compareTo(s2));
System.out.println("s2.compareTo(s3):" +s2.compareTo(s3));
System.out.println("s1 == s4:"+s1 == s4 );
System.out.println("character at 0:"+s1.charAt(0));
System.out.println("index of string j:"+s1.indexOf('J'));
System.out.println("index of string to:"+s1.indexOf("to"));
System.out.println("last index of a:"+s1.lastIndexOf('a'));
System.out.println("last index of o:"+s1.lastIndexOf("o", 15));
System.out.println("lenth of string:"+s1.length());
System.out.println("from 5th character of string: "+s1.substring(5));
System.out.println("from 5th to 11th character:"+s1.substring(5, 11));
System.out.println("check if it start with wel :"+s1.startsWith("Wel"));
System.out.println("check if it ends with (java):"+s1.endsWith("Java"));
System.out.println("string to lowercase:"+s1.toLowerCase());
System.out.println("string to uppercase:"+s1.toUpperCase());
System.out.println("Welcome "+s1.trim());
System.out.println("replace o with T: "+s1.replace('o', 'T'));
System.out.println("replace all the 'o' by character 'T':"+s1.replaceAll("o", "T"));
System.out.println("replace only 1st 'o' with 'T':"+s1.replaceFirst("o", "T"));
char[] array = s1.toCharArray();
System.out.println(" convert sting to character : ");
for(int i=0;i {
     System.out.print(array[i]+" ");
}
  }

}


Output:

this are four strings
Welcome to Java
Welcome to Java
Welcome to Java
Welcome to Java
false
false
s1.equals(s2):true
s2.equals(s3):true
 s1.compareTo(s2): 0
s2.compareTo(s3):0
false
character at 0:W
index of string j:11
index of string to:8
last index of a:14
last index of o:9
lenth of string:15
from 5th character of string: me to Java
from 5th to 11th character:me to 
check if it start with wel :true
check if it ends with (java):true
string to lowercase:welcome to java
string to uppercase:WELCOME TO JAVA
Welcome Welcome to Java
replace o with T: WelcTme tT Java
replace all the 'o' by character 'T':WelcTme tT Java
replace only 1st 'o' with 'T':WelcTme to Java
 convert sting to character : 
W e l c o m e   t o   J a v a 





Wednesday, January 27, 2016

Use of Static keyword

Static keyword in java is mainly used for memory management.this is mainly used for variable,methods and blocks.
  • Java static variable : It is used to refer common property of all the objects. As name of city which is common for all the entity.
  • Static variable gets memory at time of class load.

This explain you how static variable works , if you have some more time just see it.

For videos in hindi click here 

Simple Static example

public class studentdetails {

int age ;
String name;
static String city="fremont";
studentdetails(int age,String name)
{
this.age=age;
this.name=name;
}

public static void hello(){ //this is a static method
     city = "foster";
System.out.println("My city is "+city);// Static method can use only static variable
}

public void test(){
System.out.println("My Name is -->"+name);
System.out.println("My age is -->"+age);
System.out.println("City is -->"+city);

}
// static method can use only static variable 

public static void main(String[] args) {
studentdetails obj1 = new studentdetails(22,"Ram");
studentdetails obj2 = new studentdetails(19,"krishna");  
obj1.test();//variable city is loaded only once in class so memory
obj2.test();//second time also when object is called static variables memory remains same
hello();
}
}

Output:-

My Name is -->Ram
My age is -->22
City is -->fremont
My Name is -->krishna
My age is -->19
City is -->fremont
My city is foster

Static method is used by putting a static keyword after access modifier  in method as seen in above example.
  • Static method uses static variable and can also change value of it.
  • Static method can be call without creating instance of class,as it belongs to class
Static method is used in counter of website as when object is created the value is add rather creating instance of object.

Example : this program shows difference of creating object with static and non-static variable, expense of  room mates total and personal for different students.
program

public class Room {
static double totalExpense;
double localexpence=0;

Room(){
}

public void addExpense(double amount){
totalExpense=totalExpense+amount; // method use static variable to add total expense 
       System.out.println("total is "+totalExpense);
}
public void addnewexpence(double amount){
localexpence=localexpence+amount; // it uses non-static variable to add personal expense
System.out.println("personal expence is "+localexpence);
}
//every time when object is created new memory is allocated to non-static variable 
       // static variable shares common memory , so not invoked when instance is created

public static void main(String[] args) {
 
      Room obj1=new Room();
obj1.addExpense(20d);
obj1.addnewexpence(40d);
Room obj2=new Room();
obj2.addExpense(50d);
obj2.addnewexpence(60d);
Room obj3=new Room();
obj3.addExpense(40d);
obj3.addnewexpence(70d);
}

}

Output:-
total is 20.0
personal expence is 40.0
total is 70.0
personal expence is 60.0
total is 110.0
personal expence is 70.0





Sunday, January 17, 2016

Arrays in Java

An array is collection of values of same datatype.Its length is decided when it is created.It has index by which its element are accessed.
Index of array is always from 0 to n-1 ( for n size of array).

  • How to declare array?
datatype[ ]  array_name; Example : ( int[] array_name; ) or (float[] array_name;)
  • How to allocate memory to array?

array-name = new datatype[size];
 Example( array_name= new int[10];) or (array_name=new float[15]). 
size is number of elements you can store array.
  • How you can initialize array?
array_name[0]= value;
array_name[1]=value1;
Example
array_name[0]=1;
array_name[2]=4;
Above example state that '1' value is stored at position 0 and '4' at position 2.
  • How to access element of array at some position ?

System.out.println("Elements at position 1"+array_name[1]);

  • How to do initialize and declare array in same step?
int array_name[] ={3,70,47,87,34,55};

Program Example in Eclipse

import java.util.Scanner;
public class arrayexp {

public static void main(String[] args) {
int i;
Scanner sc = new Scanner(System.in);
System.out.println("enter how much element u want in array ");
i=sc.nextInt();
int Arry[] = new int[i];
System.out.println("enter element s");
for(int a=0;a Arry[a]=sc.nextInt();
}
System.out.println("Elements in array are ");
for(int a=0;a System.out.print(" "+Arry[a]);
}

}


}

Output

enter how much element u want in array
4
enter element s
2
4
6
8
Elements in array are
 2 4 6 8


Tuesday, October 6, 2015

Reverse number program in java

Reverse number Program is program which reverse the number given by user and if both the numbers are same reverse and given reverse .For example user enters 123 the reverse number is 321.and if user enters number 121 and if its reverse number is same 121, then the number is called palidrona.This program have static  reverse() method which invoke and return reverse intiger.

Example:-

Program

import java.util.Scanner; // this package util and Class Scanner is declared to take input from user
/*
*@ scanner class
* @author khant vyas*/
public class reverse // name of class
{

public static boolean Ispalidrona(int rev)// its method of boolean type
{
if (rev==reverse.reverse(rev))
{
System.out.println("number is palidrona ");
return true;
}
else

System.out.println("number is not  palidrona");
return false;


}
public static int reverse(int rev) /* method reverse of integer type with intiger argument and return integer value*/
       {
int result=0;
while(rev>0)
{
int num=rev%10;
rev=rev/10;

result= result*10+num;
}
return result;
}

public static void main(String[] args)
{
int a;// variable a takes user input in program
Scanner sc = new Scanner(System.in); // sc is object to the Scanner class
System.out.println("Enter the number you wanted to reverse ");
a=sc.nextInt();// nextInt() method is used accept intiger value from user

reverse(a); // passing a variable in reverse() method
Ispalidrona(reverse(a));// this method takes return value from reverse function

System.out.println(" reverse string is"+reverse(a));

}

}

Monday, October 5, 2015

linear search program in java

Linear search in java program is used to find a particular element in array with n number of values

Example 

Write a program to find a particular position of element in given dynamic array

Program 

import java.util.Scanner; / this package util and Class Scanner is declared to take input from user
/*
*@ scanner class
* @author khant vyas
*/public class linearsearch // name of class
{

public static void main(String[] args) {
int value,sizea,searchele, list[]; // list variable to array
Scanner sc = new Scanner(System.in); // sc is object to the Scanner class
System.out.println("enter number of elements you need to enter");
value=sc.nextInt(); // nextInt() method is used accept intiger value from user
list=new int[value];// array initilization
System.out.println("enter "+value+" elements ");

for(sizea=0;sizea
list[sizea]=sc.nextInt(); // adding value by user in array of size sizea-1
}
if(sizea==value)
System.out.println("enter the element you wanted to find");
searchele=sc.nextInt();// user enter element to be searched

for(sizea=0;sizea if(list[sizea]==searchele)// comparing  values in array with user entered element 
     {
System.out.println("this" +searchele+" is at position"+(sizea+1));
break;
}
}
if(sizea==value)
       {
System.out.println(searchele+" not in this array");
}
}

}

Output

java linear search output not found
linear search search

switch case in java

How to use switch case statement in java with example, switch case statement is used when there are multiple condition in java

Syntax

switch(Variable){
 case value:
     code statement;
  break;
 case value:
     code statement;
  break;
default:
     delault value not in above cases;
}

Example 
Write a program which allows user to enter a integer from todays day, and user get to know which day of week it will be after certain days (consider today as sunday,0 for sunday )Today is day 0.

Program

import java.util.Scanner;// this package util and Class Scanner is declared to take input from user
/*
*@ scanner class
* @author khant vyas
*/
public class weekdays // name of class
{

public static void main(String args[])
{
int a,b;// a is variable to store summation of given numbers

System.out.println("Enter the number of days from today and will tell you which day will be after thpse days");
System.out.println("(consider today as sunday)");
Scanner sc = new Scanner(System.in);// sc is object to the Scanner class
a=sc.nextInt();// nextInt() method is used accept intiger value from user
b=a%7; // b stores value by dividing a by 7 to sort day

   switch(b)
     {
case 0:
System.out.println("Sunday");
break;
case 1:
System.out.println("Monday");
break;
case 2:
System.out.println("Tuesday");
break;
case 3:
System.out.println("wednesday");
break;
case 4:
System.out.println("Thursday");
break;
case 5:
System.out.println("Friday");
break;
case 6:
System.out.println("Saturday");
break;

   }
 }
}

Output:

java switch case
Switch case java



do while in java

Do-while loop in jave is used to run a specific code statement for first time when you run the program and then next time will ask for condition.
syntex

do{
statement(s);
-----
}while(expression);

Example 
Write a program to get summation of values entered by programmer untill user enter's 0.(0 will terminate program)

import java.util.Scanner; // this package util and Class Scanner is declared to take input from user
/*
*@ scanner class
* @author khant vyas
*/
public class conditional // name of class
 {

public static void main(String[] args) 
{
float number,sum=0;// sum is variable to store summation of given numbers
System.out.println("enter the numbers you wan to sum");
System.out.println("enter 0 to terminate");
Scanner sc = new Scanner(System.in);
do {

number= sc.nextFloat();//number stores value from user
 sum =number+sum; // sum add numbers and return summation of all given numbers
}while(number!=0); // when user enters 0 , program termiates loop
 
System.out.println("Summation is "+sum);
}


}

Output
do while in java image not found
do while in java


Sunday, October 4, 2015

ASCII code of Alphabets in java

Write a java  Program that display ASCII code of  entered Character by user.

Program

import java.util.Scanner; // this package util and Class Scanner is declared to take input from user
/*
*@ scanner class
* @author khant vyas
*/
public class asciicode //asciicode is name of class
{

   public static void main(String args[])
     {

int x; // x is variable which stores value entered by user
Scanner sc= new Scanner(System.in);// sc is object to the Scanner class
System.out.println("Enter value you wan to see in ascii");
x=sc.nextInt();// nextInt() method is used accept intiger value from user
char c= (char) x ; // this conver character to ascii
System.out.println("ASCII code is "+c);


    }
}

Output:-
java ascii value of char image not displayed
Java Output

Saturday, October 3, 2015

Java Hello program.

              While writting a java program make sure you file name should be same as your Class name , and file name should be saved with extension .java
Java hello program is a basic program to represent to print Simple output in Java

Example
File name : Simpleprint.java
public class Simpleprint
{ //Simpleprint is name of class

public static void main(String args[])
{

 System.out.println("Hello Java");// this display output written in " "
                 System.out.println("Jai Shree krishna");

}



}

      To run Java file  open command prompt and first go to path of yor file then run .java file with command Javac after the type java and  class name in .java file and java code will excute
Output:
Java Hello image not found
output