Examples

Chapter 2
Introduction to Java Applications
Dr. Hikmat Jaber
Computer Science Department
1
Printing a Line of Text
/* This is a first program in Java Programming Language.
The program prints a line of text on the output console. */
/** Java application should have at least one class */
public class LineOfText
{
// main method begins execution of Java application
public static void main(String[] args)
{
System.out.println("Java is a powerful programming language");
}
}
2
Comments
Three types of comments in Java.
Line comment: A line comment is preceded by two
slashes (//) in a line.
Paragraph comment: A paragraph comment is
enclosed between /* and */ in one or multiple lines.
javadoc comment: javadoc comments begin with /**
and end with */. They are used for documenting
classes, data, and methods. They can be extracted
into an HTML file using JDK's javadoc command.
3
Literals
A literal is a constant value (text or number) that
appears directly in the program. For example, 34,
"Enter your name", 'H', and 5.0 are literals.
4
String Literals
A string literal is a constant text value enclosed
between double quotation marks.
Examples:
"Enter your name "
"The value of x is "
5
Number Literals
A number literal is a constant numeric value.
Examples:
34
-230
71.55
3509567
6
Integer Literals
An integer literal can be assigned to an integer
variable as long as it can fit into the variable. A
compilation error would occur if the literal were too
large for the variable to hold. For example, the
statement byte b = 1000 would cause a compilation
error, because 1000 cannot be stored in a variable of
the byte type.
An integer literal is assumed to be of the int type,
whose value is between -231 (-2147483648) to 231–1
(2147483647). To denote an integer literal of the long
type, append it with the letter L or l. L is preferred
because l (lowercase L) can easily be confused with 1
(the digit one).
7
Floating-Point Literals
Floating-point literals are written with a
decimal point. By default, a floating-point
literal is treated as a double type value. For
example, 5.0 is considered a double value, not
a float value. You can make a number a float
by appending the letter f or F, and make a
number a double by appending the letter d or
D. For example, you can use 100.2f or 100.2F
for a float number, and 100.2d or 100.2D for a
double number.
8
Unicode Format
Java characters use Unicode, a 16-bit encoding scheme
established by the Unicode Consortium to support the
interchange, processing, and display of written texts in
the world’s diverse languages. Unicode takes two bytes,
preceded by \u, expressed in four hexadecimal numbers
that run from '\u0000' to '\uFFFF'. So, Unicode can
represent 65535 + 1 characters.
Unicode \u03b1 \u03b2 \u03b3 for three Greek
letters
System.out.printf("\u0065");
System.out.printf("%s%s","\u0065", "\u00F2");
9
Escape Sequences
Description
Escape Sequence
Backspace
\b
Tab
\t
Linefeed
\n
Carriage return \r
Backslash
\\
Single Quote
\'
Double Quote
\"
10
Identifiers


An identifier is a sequence of characters that consist
of letters, digits, underscores (_), and dollar signs ($).
An identifier must start with a letter, an underscore
(_), or a dollar sign ($). It cannot start with a digit.
– An identifier cannot be a reserved word such as if, else,
void, int, double, class, return, etc.


An identifier cannot be true, false, or null.
An identifier can be of any length.
11
Variables
A variable is an identifier that its value may change.
Examples:
mark1, employee_Address, studentID, $age
bookName, _length
Declaring variables format :
datatype variableName;
12
Declaring Variables
int x;
// Declare x to be an
// integer variable;
double radius; // Declare radius to
// be a double variable;
char a;
// Declare a to be a
// character variable;
13
Assignment Statements
x = 1;
// Assign 1 to x;
radius = 1.0;
// Assign 1.0 to radius;
a = 'A';
// Assign 'A' to a;
14
Declaring and Initializing
in One Step
 int
x = 1;
 double
d = 1.4;
15
Constants
A constant is an identifier that its value never changes.
Declaring constants Format :
final datatype CONSTANTNAME = VALUE;
Examples:
final double PI = 3.14159;
final int SIZE = 3;
16
Primitive Data Types
Numerical Data Types
Name
Range
Storage Size
byte
–27 (-128) to 27–1 (127)
8-bit signed
short
–215 (-32768) to 215–1 (32767)
16-bit signed
int
–231 (-2147483648) to 231–1 (2147483647) 32-bit signed
long
–263 to 263–1
(i.e., -9223372036854775808
to 9223372036854775807)
64-bit signed
float
Negative range:
-3.4028235E+38 to -1.4E-45
Positive range:
1.4E-45 to 3.4028235E+38
32-bit IEEE 754
double
Negative range:
-1.7976931348623157E+308 to
-4.9E-324
Positive range:
4.9E-324 to 1.7976931348623157E+308
64-bit IEEE 754
17
The boolean Data Type
Often in a program you need to compare two
values, such as whether i is greater than j. Java
provides six comparison operators (also known
as relational operators) that can be used to
compare two values. The result of the
comparison is a Boolean value: true or false.
Examples:
boolean answer = true;
boolean b = (1 > 2);
18
Character Data Type
char letter = 'A'; (ASCII)
char numChar = '4'; (ASCII)
Four hexadecimal digits.
char letter = '\u0041'; (Unicode)
char numChar = '\u0034'; (Unicode)
NOTE: The increment and decrement operators can also be used
on char variables to get the next or preceding Unicode character.
For example, the following statements display character b.
char ch = 'a';
System.out.println(++ch);
19
The String Type
The char type only represents one character. To represent a string
of characters, use the data type called String. For example,
String message = "Welcome to Java";
String is actually a predefined class in the Java library just like the
System class and JOptionPane class. The String type is not a
primitive type. It is known as a reference type. Any Java class can
be used as a reference type for a variable. Reference data types
will be thoroughly discussed in “Objects and Classes.” For the
time being, you just need to know how to declare a String
variable, how to assign a string to the variable, and how to
concatenate strings.
20
String Concatenation
// Three strings are concatenated
String message = "Welcome " + "to " + "Java";
// String Chapter is concatenated with number 2
String s = "Chapter" + 2; // s becomes Chapter2
// String Supplement is concatenated with character B
String s1 = "Supplement" + 'B'; // s1 becomes SupplementB
21
Memory Concepts
 Variable name corresponds to a memory location.
 Every variable has a name, a type, a size and a value.
Example:
int number
number = 72
type
size = 4 bytes
72
number
name
value
22
Formatting Output
Use the printf statement.
System.out.printf(format, items);
Where format is a string that may consist of substrings
and format specifiers. A format specifier specifies how
an item should be displayed. An item may be a
numeric value, character, boolean value, or a string.
Each specifier begins with a percent sign (%).
23
Frequently-Used Specifiers
Specifier Output
Example
%b
a boolean value
true or false
%c
a character
'a'
%d
a decimal integer
200
%f
a floating-point number
45.460000
%e
a number in standard scientific notation
4.556000e+01
%s
a string
"Java is cool"
int count = 5;
items
double amount = 45.56;
System.out.printf("count is %d and amount is %f", count, amount);
display
count is 5 and amount is 45.560000
24
Displaying Text in a Message
Dialog Box
you can use the showMessageDialog method in the
JOptionPane class. JOptionPane is one of the many
predefined classes in the Java system, which can
be reused rather than “reinventing the wheel.”
25
The showMessageDialog Method
JOptionPane.showMessageDialog(null,
"Welcome to Java!",
"Display Message",
JOptionPane.INFORMATION_MESSAGE);
26
Two Ways to Invoke the Method
There are several ways to use the showMessageDialog
method. For the time being, all you need to know are
two ways to invoke it.
One is to use a statement as shown in the example:
JOptionPane.showMessageDialog(null, x,
y, JOptionPane.INFORMATION_MESSAGE);
where x is a string for the text to be displayed, and y is
a string for the title of the message dialog box.
The other is to use a statement like this:
JOptionPane.showMessageDialog(null, x);
where x is a string for the text to be displayed.
27
Introducing Programming with an Example
This program computes the area of the circle.
28
Trace a Program Execution
public class ComputeArea {
/** Main method */
public static void main(String[] args) {
double radius;
double area;
allocate memory
for radius
radius
no value
// Assign a radius
radius = 20;
// Compute area
area = radius * radius * 3.14159;
// Display results
System.out.println("The area for the circle of radius " +
radius + " is " + area);
}
}
29
Trace a Program Execution
public class ComputeArea {
/** Main method */
public static void main(String[] args) {
double radius;
double area;
// Assign a radius
radius = 20;
// Compute area
area = radius * radius * 3.14159;
memory
radius
no value
area
no value
allocate memory
for area
// Display results
System.out.println("The area for the circle of radius " +
radius + " is " + area);
}
}
30
Trace a Program Execution
public class ComputeArea {
/** Main method */
public static void main(String[] args) {
double radius;
double area;
assign 20 to radius
radius
area
20
no value
// Assign a radius
radius = 20;
// Compute area
area = radius * radius * 3.14159;
// Display results
System.out.println("The area for the circle of radius " +
radius + " is " + area);
}
}
31
Trace a Program Execution
public class ComputeArea {
/** Main method */
public static void main(String[] args) {
double radius;
double area;
memory
radius
area
20
1256.636
// Assign a radius
radius = 20;
// Compute area
area = radius * radius * 3.14159;
compute area and assign it
to variable area
// Display results
System.out.println("The area for the circle of radius " +
radius + " is " + area);
}
}
32
Trace a Program Execution
public class ComputeArea {
/** Main method */
public static void main(String[] args) {
double radius;
double area;
memory
radius
area
20
1256.636
// Assign a radius
radius = 20;
// Compute area
area = radius * radius * 3.14159;
print a message to the
console
// Display results
System.out.println("The area for the circle of radius " +
radius + " is " + area);
}
}
33
Input Data
This note provides two ways of obtaining input.
1.
2.
Using the Scanner class (console input)
Using JOptionPane input dialogs
34
Reading Input from the Console
1. Create a Scanner object
Scanner input = new Scanner(System.in);
2. Use the methods next(), nextByte(), nextShort(),
nextInt(), nextLong(), nextFloat(), nextDou ble(), or
nextBoolean() to obtain to a string, byte, short, int,
long, float, d ou ble, or boolean valu e. For exam ple,
System.out.print("Enter a double value: ");
Scanner input = new Scanner(System.in);
double d = input.nextDouble();
ComputeAreaWithConsoleInput
35
Compute Area of a Rectangle using
Console Input
import java.util.Scanner;
public class AreaRectangle
{
public static void main(String[] args)
{
int length, width, area;
Scanner input = new Scanner (System.in);
System.out.print("Enter the length: ");
length = input.nextInt();
System.out.print("Enter the width: ");
width = input.nextInt();
area = length*width;
System.out.println("Length="+length+ " Width="+width+ " Area="+area);
}
}
36
JOptionPane Input
Getting Input from Input Dialog Boxes
String input = JOptionPane.showInputDialog(
"Enter an input");
37
Getting Input from Input Dialog Boxes
String string = JOptionPane.showInputDialog(
null, “Prompting Message”, “Dialog Title”,
JOptionPane.QUESTION_MESSAGE);
38
Compute Area of a Rectangle using
Dialog Boxes Input
import javax.swing.JOptionPane;
public class AreaRectangle
{
public static void main(String[] args)
{
int length, width, area;
String string;
string = JOptionPane.showInputDialog(null, "Enter the length: ",
"Input", JOptionPane.INFORMATION_MESSAGE);
length = Integer.parseInt(string);
string = JOptionPane.showInputDialog(null, "Enter the width: ",
"Input", JOptionPane.INFORMATION_MESSAGE);
width = Integer.parseInt(string);
area = length*width;
JOptionPane.showMessageDialog(null, "Area = "+area, "Display Area",
JOptionPane.INFORMATION_MESSAGE);
}
}
39
Two Ways to Invoke the Method
There are several ways to use the showInputDialog method. For
the time being, you only need to know two ways to invoke it.
One is to use a statement as shown in the example:
String string = JOptionPane.showInputDialog(null, x,
y, JOptionPane.QUESTION_MESSAGE);
where x is a string for the prompting message, and y is a string for
the title of the input dialog box.
The other is to use a statement like this:
JOptionPane.showInputDialog(x);
where x is a string for the prompting message.
40