oxus20 java programming questions and answers part i

11

Click here to load reader

Upload: abdul-rahman-sherzad

Post on 19-Aug-2014

1.169 views

Category:

Education


1 download

DESCRIPTION

OXUS 20 is pleased to offer PART I of Java Programming Questions and Answers with details explanation to support the educational needs and hoping these series help and benefit Computer Science student, IT professionals and those who eager to learn programming and in particular Java Programming...

TRANSCRIPT

Page 1: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 1 of 11

PART I – Single and Mult ip le choices, True/False and Blanks:

1) ............. If I have a variable that is a constant, then I must define the

variable name with capital letters.

True False

2) If you forget to put a closing quotation mark on a string, what kind error will be

raised?

A compilation error A runtime error A logic error

3) ............. What is the size of a char?

4 bits 7 bits

8 bits 16 bits

4) If a program compiles fine, but it produces incorrect result, then the program

suffers __________.

A compilation error

A runtime error

A logic error

5) Which of the following are the reserved words?

public static

void class

False - Because you don't have to define

the constant variable name with CAPITAL;

but it is recommended.

16 bits - Because the char data type is a single

16-bit Unicode character. It has a minimum value

of '\u0000' (or 0) and a maximum value

of '\uFFFF' (or 65,535 inclusive).

A logic error - Because the program compiles fine,

also there is no Runtime Error because the program

does not crush.

All of them are Reserved Words (Key

Words) in JAVA.

Page 2: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 2 of 11

6) ............. The operator, +, may be used to concatenate strings together as well

as add two numeric quantities together.

True False

7) Analyze the following code.

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

System.out.println(myMethod(2)); }

public static int myMethod(int num) { return num; }

public static void myMethod(int num) { System.out.println(num); } }

The program has a compile error because the two methods myMethod have the same signature.

The program has a compile error because the second myMethod method is defined, but not invoked in the main method.

The program runs and prints 2 once.

The program runs and prints 2 twice.

8) Math.pow(4, 1 / 2) returns __________.

2 2.0

0 0.0

1 1.0

True - Because:

String full_name = "Abdul Rahman " + "Sherzad";

int sum = 2 + 3;

The method name and parameter list are part of method

signature. Declaration of two methods with same

signature is not possible because The Java compiler

is able to distinguish the difference between the

methods through their method signatures.

1.O – Because:

1 / 2 = 0 due to the INTEGER Division

Math.pow(4, 0) = 1.0 since every number to the

power is 1; on the other hand the pow() method

returns double thus 1 becomes 1.0

Page 3: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 3 of 11

9) Which of the following is a valid identifier?

$343 class

9X 8+9

radius _999

10) Which of the following is a constant, according to Java naming conventions?

MAX_VALUE Test

read ReadInt

COUNT Variable_Name

11) Analyze the following code:

Code 1:

int number = 45;

boolean even; if (number % 2 == 0) even = true; else even = false;

Code 2:

boolean even = (number % 2 == 0);

Code 1 has compile errors.

Code 2 has compile errors.

Both Code 1 and Code 2 have compile errors.

Both Code 1 and Code 2 are correct, but Code 2 is better.

All variable names must begin with a letter of the alphabet, an underscore ( _ ), or a dollar sign ($).

You cannot use a java keyword (reserved word) for a variable name.

Use ALL_UPPER_CASE for your named constants,

separating words with the underscore character.

For example, use TAX_RATE rather

than taxRate or TAXRATE.

boolean even = (number % 2 == 0);

The above expression interprets as if the

number is completely divisible by 2 even will

be set to true else even will be set to false.

Page 4: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 4 of 11

12) What is the exact output of the following code?

double area = 3.5;

System.out.print("area");

System.out.print(area);

3.53.5 3.5 3.5

area3.5 area 3.5

13) How many times will the following code print "Welcome to OXUS 20"?

int count = 0;

while (count++ < 10) {

System.out.println("Welcome to OXUS 20");

}

8 9

10 11

14) What is the result of -7 % 5 is _____?

2 -2

0 -7

System.out.print("area"); // the word area will be printed

as it appears between "" with cursor on same line.

System.out.println(area); // the word area will be

interpreted as 3.5 this time because it does not appear

between "".

The above code can be written as follow: int count = 0; while (count < 10) {

System.out.println("Welcome to OXUS 20");

count++;

}

The loop start from 0 (0 is inclusive) and continues until 10 (10 is not included)

Interval demonstration [0, 10)

JAVA language developers decided to choose the sign of the result equals the sign of the dividend in modulus expression. Thus, in expression -7 % 5 the dividend is -7, so result of modulus will be evaluated to -2.

Page 5: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 5 of 11

15) You should fill in the blank in the following code with ______________. public class Test { public static void main(String[] args) { System.out.print("The grade is "); printGrade(78.5); System.out.print("The grade is "); printGrade(59.5); } public static __________ printGrade(double score) { if (score >= 90.0) { System.out.println('A'); } else if (score >= 80.0) { System.out.println('B'); } else if (score >= 70.0) { System.out.println('C'); } else if (score >= 60.0) { System.out.println('D'); } else { System.out.println('F'); } } }

int double

boolean char

void String

16) The following code fragment reads in two numbers:

public static void main(String[] args) {

Scanner input = new Scanner(System.in);

int i = input.nextInt();

double d = input.nextDouble();

}

What are the correct ways to enter these two numbers?

Enter an integer, a space, a double value, and then the Enter key.

Enter an integer, two spaces, a double value, and then the Enter key.

Enter an integer, an Enter key, a double value, and then the Enter key.

Enter a numeric value with a decimal point, a space, an integer, and then the Enter key.

void is the correct answer because the

printGrade() method does not return anything; it

simply prints the result.

Page 6: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 6 of 11

PART I I – Write output of the fol lowings programs:

1. What output is produced by the following program?

public class Test { public static void main(String[] args) { int limit = 100, num1 = 10, num2 = 20; if (limit <= limit) { if (num1 == num2) System.out.println("Tricky Question"); System.out.println("OXUS 20"); } System.out.println("OXUS means (Amu Darya)"); } }

2. What output is produced by the following program?

public class Test { public static void main(String[] args) { char c1 = 'A'; char c2 = 'B'; System.out.println(c1 + c2); } }

Following is the correct indentation and syntax of above program: public class Test { public static void main(String[] args) { int limit = 100, num1 = 10, num2 = 20; if (limit <= limit) { if (num1 == num2) { System.out.println("Tricky Question"); } System.out.println("OXUS 20"); } System.out.println("OXUS means (Amu Darya)"); } }

OXUS 20 OXUS means (Amu Darya)

Why the output is 131? Because:

'A' = 65

'B' = 66

'A' + 'B' => 65 + 66 = 131

131

Page 7: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 7 of 11

1. What output is produced by the following program?

public class Test { public static void main(String[] args) { char c1 = 'A'; char c2 = 'B'; System.out.println("" + c1 + c2); } }

1. What output is produced by the following program?

public class Test { public static void main(String[] args) { char c1 = 'A'; char c2 = 'B'; System.out.println(c1 + c2 + ""); } }

Why the output is AB? Because java calculates the expression from

left to right as follow:

"" + c1 = "A" // String plus char will be converted to String

"A" + c2 = "AB" // String plus char will be converted to String

Thus output will be AB

AB

Why the output is 131? Because java calculates the expression from

left to right as follow:

c1 + c2 => 'A' + 'B' => 65 + 66 = 131 // Both will be

considered as interger

Now 131 + "" = "131" // integer plus String will be evaluated to

String

Thus output will be 131

131

Page 8: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 8 of 11

PART I I I – Write the program for the fol lowing s:

1. Write a method called isAlphaNumeric that accepts a character parameter and returns true if that character is either an uppercase, lowercase or numeric letter.

Method1: Using Regular Expression

public static boolean isAlphanumeric(String input) {

if (input == null || input.length() == 0) return false;

if (input.matches("[a-zA-Z0-9]+")) {

return true;

} else {

return false;

}

}

Method2: Using for loop

public static boolean isAlphanumeric(String input) { if (input == null || input.length() == 0) return false; for (int i = 0; i < input.length(); i++) { char c = input.charAt(i); if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z') || (c >= '0' && c <= '9'))) { return false; } } return true; }

Method3: Using for loop with Character Wrapper Class

public static boolean isAlphanumeric(String input) { if (input == null || input.length() == 0) return false; for (int i = 0; i < input.length(); i++) { char c = input.charAt(i); if (!Character.isLetterOrDigit(c)) { return false; } } return true; }

Page 9: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 9 of 11

2. Write a method to count the number of occurrences of a char in a String?

Method1: Using loop with support of String methods

public static int countOccurrences(String strInput, char needle) {

int count = 0;

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

if (strInput.charAt(i) == needle) {

count++;

}

}

return count;

}

Method1: Using Advanced for loop

public static int countOccurrences(String strInput, char needle) {

int count = 0;

for (char c : strInput.toCharArray()) {

if (c == needle) {

count++;

}

}

return count;

}

Method1: Using String replaceAll() method

public static int countOccurrences(String strInput, char needle) {

return strInput.length() - strInput.replaceAll(String.valueOf(needle), "").length();

}

return strInput.length() - strInput.replaceAll(String.valueOf(needle), "").length();

Consider strInput = "Abdul Rahman Sherzad" and needle = 'a'

strInput.length() // 20

strInput.replaceAll(String.valueOf(needle), ""); // Abdul Rhmn Sherzd

"Abdul Rhmn Sherzd".length() // 17

Return 20 – 17 = 3 // Thus, letter 'a' appears 3 times in "Abdul Rahman Sherzad".

Page 10: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 10 of 11

3. Write a method called sumRange that accepts two integers as parameters that

represent a range. Print an error message and return zero if the second parameter

is less than the first. Otherwise, the method should return the sum of the integers

in that range (both first and second parameters are inclusive).

public static int sumRange(int start, int end) { int sum = 0; if (end < start) { System.err.println("ERROR: Invalid Range\n"); } else { for (int num = start; num <= end; num++) { sum = sum + num; } } return sum; }

4. Write a method called isAlpha that accepts a String as parameter and returns true

if the given String contains only either uppercase or lowercase alphabetic letters.

Method1: Using Regular Expression

public static boolean isAlpha(String input) {

if (input == null || input.length() == 0) return false;

if (input.matches("[a-zA-Z]+"))

return true;

return false;

}

Method2: Using for loop

public static boolean isAlpha(String input) { if (input == null || input.length() == 0) return false; for (int i = 0; i < input.length(); i++) { char c = input.charAt(i); if (!((c >= 'A' && c <= 'Z') || (c >= 'a' && c <= 'z'))) { return false; } } return true; }

OX

US20

Note: similar functionality is provided by the Character.isLetter(c) method as follow:

if (!Character.isLetter(c)) { return false; }

Page 11: OXUS20 JAVA Programming Questions and Answers PART I

https://www.facebook. com/Oxus20

Abdul Rahman Sherzad Page 11 of 11

Society

is the premier society of

Computer Science and IT

professionals founded in

March 2013.

The society's goal is to provide information and assistance to Computer Science

professionals, increase their job performance and overall agency function by providing

cost effective products, services and educational opportunities. So the society believes

with the education of Computer Science and IT they can help their nation to higher

standards of living.

Follow us on Facebook,

https://www.facebook.com/Oxus20