java basic programming needs

Post on 20-May-2015

1.825 Views

Category:

Education

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presented By: N.V.Raja Sekhar Reddy www.technolamp.co.in Want more interesting... Watch and Like us @ https://www.facebook.com/Technolamp.co.in subscribe videos @ http://www.youtube.com/user/nvrajasekhar

TRANSCRIPT

Java Session 4

Contents…

Data TypesType Conversion and CastingVariablesScope and lifetime of variablesOperatorsExpressionsControl Statements

DATA TYPES

• Variables are nothing but reserved memory locations to store values. This means that when you create a variable you reserve some space in memory.

• Based on the data type of a variable, the operating system allocates memory and decides what can be stored in the reserved memory

DATA TYPES

Data Types• There are two data types available in Java:

Primitive Data TypesReference/Object Data Types

byte:Byte data type is a 8-bit signed two.s complement integer.Minimum value is -128 (-2^7)Maximum value is 127 (inclusive)(2^7 -1)Default value is 0Byte data type is used to save space in large arrays, mainly in place

of integers, since a byte is four times smaller than an int.Example : byte a = 100 , byte b = -50

short:Short data type is a 16-bit signed two's

complement integer.Minimum value is -32,768 (-2^15)Maximum value is 32,767(inclusive) (2^15 -1)Default value is 0.Example : short s= 10000 , short r = -20000

int:Int data type is a 32-bit signed two's complement integer.Minimum value is - 2,147,483,648.(-2^31)Maximum value is 2,147,483,647(inclusive).(2^31 -1)Int is generally used as the default data type for integral values

unless there is a concern about memory.The default value is 0.Example : int a = 100000, int b = -200000

long:Long data type is a 64-bit signed two's complement integer.Minimum value is -9,223,372,036,854,775,808.(-2^63)Maximum value is 9,223,372,036,854,775,807 (inclusive). (2^63 -1)This type is used when a wider range than int is needed.Default value is 0L.Example : int a = 100000L, int b = -200000L

float:Float data type is a single-precision 32-bit IEEE 754 floating point.Float is mainly used to save memory in large arrays of floating point

numbers.Default value is 0.0f.Float data type is never used for precise values such as currency.Example : float f1 = 234.5f

double:double data type is a double-precision 64-bit IEEE 754 floating point.This data type is generally used as the default data type for decimal

values. generally the default choice.Double data type should never be used for precise values such as

currency.Default value is 0.0d.Example : double d1 = 123.4

boolean:boolean data type represents one bit of information.There are only two possible values : true and false.This data type is used for simple flags that track true/false

conditions.Default value is false.Example : boolean one = true

char:char data type is a single 16-bit Unicode character.Minimum value is '\u0000' (or 0).Maximum value is '\uffff ' (or 65,535 inclusive).Char data type is used to store any character.Example . char letterA ='A'

Reference Datatypes• Reference variables are created using defined constructors

of the classes. They are used to access objects. These variables are declared to be of a specific type that cannot be changed. For example, Employee, Puppy etc.

• Class objects, and various type of array variables come under reference data type.

• Default value of any reference variable is null.

• A reference variable can be used to refer to any object of the declared type or any compatible type.

• Example : Animal animal = new Animal("giraffe");

Data TypesDataType Memory (Bytes) Range

byte 1 -128 to 127

short 2 -32768 t0 32767

int 4 -2147483648 to 2147483647

long 8 -922337263685477808 to -922337263685477807

float 4 1.4e-045 to 3.4e+038

double 8 4.9e-324 to 1.8e+308

char 2 0 to 65536

boolean - True/False

TYPE CONVERSIONTYPE CONVERSION Size Direction of Data Type

Widening Type Conversion (Casting down) Smaller Data Type Larger Data Type

Narrowing Type Conversion (Casting up) Larger Data Type Smaller Data Type

Conversion done in two ways Implicit type conversion

Carried out by compiler automatically Explicit type conversion

Carried out by programmer using casting

Type ConversionType Conversion

Widening Type Converstion Implicit conversion by compiler automatically

byte -> short, int, long, float, doubleshort -> int, long, float, doublechar -> int, long, float, double

int -> long, float, doublelong -> float, double

float -> double

byte -> short, int, long, float, doubleshort -> int, long, float, doublechar -> int, long, float, double

int -> long, float, doublelong -> float, double

float -> double

Type ConversionType Conversion

Narrowing Type ConversionProgrammer should describe the conversion

explicitly

byte -> charshort -> byte, charchar -> byte, short

int -> byte, short, charlong -> byte, short, char, int

float -> byte, short, char, int, longdouble -> byte, short, char, int, long, float

byte -> charshort -> byte, charchar -> byte, short

int -> byte, short, charlong -> byte, short, char, int

float -> byte, short, char, int, longdouble -> byte, short, char, int, long, float

Type Casting

• General form: (targetType) value Examples: 1) integer value will be reduced module bytes

range:int i;byte b = (byte) i;

2) floating-point value will be truncated to integer value: float f; int i = (int) f;

VARIABLES• type identifier [ = value][, identifier [= value] ...] ; • Here are several examples of variable declarations of various

types int a, b, c; // declares three ints, a, b, and c. int d = 3, e, f = 5; // declares three more ints, initializing

// d and f. byte z = 22; // initializes z. double pi = 3.14159; // declares an approximation of pi. char x = 'x'; // the variable x has the value 'x'.

Types of variables

There are three kinds of variables in Java:Local variablesInstance variablesClass/static variables

Local variables are declared in methods, constructors, or blocksInstance variables are declared in a class, but outside a method,

constructor or any block.Class variables also known as static variables are declared with

the static keyword in a class, but outside a method, constructor or a block.

Variable Scope

Scope Definition

A scope is defined by a block:

{…

}

A variable declared inside the scope is not visible outside:

{int n;

}n = 1;

Example: Variable Scopeclass Scope {

public static void main(String args[]) {int x;x = 10;if (x == 10) {

int y = 20;System.out.println("x and y: " + x + “ " + y);

x = y * 2;}System.out.println("x is " + x + “y is” + y);

}}

Variable Lifetime

Variables are created when their scope is entered by control flow and

destroyed when their scope is left:

1) A variable declared in a method will not hold its value between different

invocations of this method.

2) A variable declared in a block looses its value when the block is left.

3) Initialized in a block, a variable will be re-initialized with every re-entry.

Variables lifetime is confined to its scope!

Example: Variable Lifetimeclass LifeTime {

public static void main(String args[]) {int x;for (x = 0; x < 3; x++) {

int y = -1;System.out.println("y is: " + y);y = 100;System.out.println("y is now: " + y);

}}

}

OPERATOR TYPES

• Java operators are used to build value expressions.• Java provides a rich set of operators:

1) arithmetic (+,-,*,/,%)2) assignment (+=,-=,*=,/=,%=,=)3) relational (==,!=,<,>,<=,>=)4) logical (&&,||,!)5) bitwise (&,|,~,^,<<,>>,>>)

Bit wise operators

~ ~op Inverts all bits

& op1 & op2 Produces 1 bit if both operands are 1

| op1 |op2 Produces 1 bit if either operand is 1

^ op1 ^ op2 Produces 1 bit if exactly one operand is 1

>> op1 >> op2 Shifts all bits in op1 right by the value of op2

<< op1 << op2 Shifts all bits in op1 left by the value of op2

Other Operators

?:

[]

.

(params)

(type)

new

shortcut if-else statement

used to declare arrays, create arrays, access array elements

used to form qualified names

delimits a comma-separated list of parameters

casts a value to the specified type

creates a new object or a new array

instanceof determines if its first operand is an instance of the second

Table: Operator Precedence

highest()++*+>>>==&^|&&||?:=lowest

[]--/->>>>=!=

.~%

<<<

!

<=

op=

• An expression is a construct made up of variables, operators, and method invocations, which are constructed according to the syntax of the language, that evaluates to a single value.

• Examples of expressions are in bold below: int number = 0; anArray[0] = 100; System.out.println ("Element 1 at index 0: " + anArray[0]);

int result = 1 + 2; // result is now 3 if(value1 == value2) System.out.println("value1 == value2");

Expressions

CONTROL STATEMENTS

• Java control statements cause the flow of execution to advance and branch based on the changes to the state of the program.

• Control statements are divided into three groups:

1) selection statements allow the program to choose different parts of the execution based on the outcome of an expression

2) iteration statements enable program execution to repeat one or more statements

3) jump statements enable your program to execute in a non-linear fashion

Selection Statements

• Java selection statements allow to control the flow of program’s execution based upon conditions known only during run-time.

• Java provides four selection statements:1) if2) if-else3) if-else-if4) switch

Iteration Statements

• Java iteration statements enable repeated execution of part of a program until a certain termination condition becomes true.

• Java provides three iteration statements:1) while2) do-while3) for4) for each(JDK1.5 version)

• if-else

Syntax Example

if (<condition-1>) { // logic for true condition-1 goes here} else if (<condition-2>) { // logic for true condition-2 goes here} else { // if no condition is met, control comes here}

int a = 10;if (a < 10 ) { System.out.println(“Less than 10”);} else if (a > 10) { System.out.pritln(“Greater than 10”);} else { System.out.println(“Equal to 10”);}

Result: Equal to 10s

Syntax Example

switch (<value>) { case <a>: // stmt-1 break; case <b>: //stmt-2 break; default:

//stmt-3

int a = 10;switch (a) { case 1: System.out.println(“1”); break; case 10: System.out.println(“10”); break; default: System.out.println(“None”);

Result: 10

• switch

• do-while

Syntax Example

do { // stmt-1} while (<condition>);

int i = 0;do {System.out.println(“In do”); i++;} while ( i < 10);

Result: Prints “In do” 11 times

• whileSyntax Example

while (<condition>) {//stmt

}

int i = 0;while ( i < 10 ) { System.out.println(“In while”); i++;}

Result: “In while” 10 times

• for

Syntax Example

for ( initialize; condition; expression){ // stmt}

for (int i = 0; i < 10; i++){ System.out.println(“In for”);}

Result: Prints “In do” 10 times

Jump Statements

• Java jump statements enable transfer of control to other parts of program.

• Java provides three jump statements:1) break (3 uses:loop,switch,nested blocks)

2) continue3) return

• In addition, Java supports exception handling that can also alter the control flow of a program.

TEST

I m not giving the answers for these basic questions,

please try and execute if possible. If you still want the answers then

copy and paste the entire question in google.

What all gets printed when the following program is compiled and run. Select the two correct answers.

public class test { public static void main(String args[]) { int i, j=1; i = (j>1)?2:1; switch(i) { case 0: System.out.println(0); break; case 1: System.out.println(1); case 2: System.out.println(2); break; case 3: System.out.println(3); break; } } } a) 0 b) 1 c) 2 d) 3

Which declaration of the main method below would allow a class to be started as a standalone program. Select the one correct answer.

a) public static void main(String args[])b) public static void MAIN(String args[])c) public static void main(String args)d) public static void main(char args[])e) static public void main(String args[])f) public static int main(char args[])

Which of the following will compile without error

1) import java.awt.*;package Mypackage;class Myclass {}

2) package MyPackage;import java.awt.*;class MyClass{}

3) /*This is a comment */

package MyPackage;import java.awt.*;class MyClass{}

What’s the difference between constructors and normal methods?

Constructors must have the same name as the class and can not return a value. They are only called once while regular methods could be called many times and it can return a value or can be void.

• Give a simplest way to find out the time a method takes for execution without using any profiling tool?

long start = System.currentTimeMillis ();method ();long end = System.currentTimeMillis ();

System.out.println (“Time taken for execution is ” + (end – start));

public class test { public static void main(String args[]) { String s1 = "abc"; String s2 = "abc"; if(s1 == s2) System.out.println(1); else System.out.println(2); if(s1.equals(s2)) System.out.println(3); else System.out.println(4); } } a)1 b)2 c)3 d)4

• Which of the following are legal array declarations. Select the three correct answers.

a) int i[5][];b) int i[][]; c) int []i[];d) int i[5][5]; e) int[][] a;

What is the range of values that can be specified for an int. Select the one correct answer. The range of values is compiler dependent.

a) -231 to 231 - 1b) -231-1 to 231

c) -215 to 215 - 1d) -215-1 to 215

What would be the results of compiling and running the following class. Select the one correct answer.

class test { public static void main() { System.out.println("test"); } }

a)The program does not compile as there is no main method defined.

b)The program compiles and runs generating an output of "test" c)The program compiles and runs but does not generate any output. d)The program compiles but does not run.

What gets printed when the following program is compiled and run. Select the one correct answer.

 class test {

public static void main(String args[]) {int i,j,k,l=0;k = l++;j = ++k;i = j++;System.out.println(i);}

a) 0 b) 1 c) 2 d) 3

• Which operator is used to perform bitwise inversion in Java. Select the one correct answer.

a) ~ b) ! c) & d)| e) ^

What gets printed when the following program is compiled and run. Select the one correct answer.

  public class test {

public static void main(String args[]) {byte x = 3;x = (byte)~x;System.out.println(x);

}}  

a) 3 b) 0 c) 1 d) 11 e) 252 f) 214 g) 124 h) -4

What gets displayed on the screen when the following program is compiled and run. Select the one correct answer.

 public class test {

public static void main(String args[]) {int x,y;x = 3 & 5;y = 3 | 5;System.out.println(x + " " + y);

}} 

a) 7 1b) 3 7c) 1 7d) 3 1e) 1 3f) 7 3g) 7 5

What all gets printed when the following program is compiled and run. Select the one correct answer.

public class test { public static void main(String args[]) { int i=0, j=2; do { i=++i; j--; } while(j>0); System.out.println(i); } }

a) 0 b) 1 c) 2 d) The program does not compile because of statement "i=++i;"

What gets displayed on the screen when the following program is compiled and run. Select the one correct answer.

 public class test {

public static void main(String args[]) {int x, y;

 x = 5 >> 2;y = x >>> 2;

System.out.println(y);}

a) 5b) 2c) 80d) 0e) 64

Thank You

top related