SlideShare uma empresa Scribd logo
1 de 57
Introduction to Java Programming

Junior Programmer Camp #8
Chapter 1: Elementary Programming
What is Java?
• A high-level programming language
• Useful for developing business applications
• Java Development Kit download:
http://www.oracle.com/technetwork/java/jav
ase/downloads/index.html

• Case sensitive
What is DrJava?
• A programming tool used for writing code in
Java
• Can be downloaded from www.drjava.org
• Simple and easy to use for beginners
DrJava
Typical Java Code Skeleton
public class Program{
public static void main(String[] args) {
// your main code goes here
Comments
• Sometimes you may want to add some notes
to your Java code, without any effect to the
code.
• In this case, you can write comments.
Two ways:
– System.out.println("test"); // print a test string
– /*
This is a multiple-line comment.
More line
Even more line
Blah blah
*/
Simple Program
public class Program {
public static void main(String[] args) {
System.out.println(“Hello!! JPC#8");
}
}

OUTPUT:
Hello!! JPC#8
Basic Arithmetics
public class Program {
public static void main(String[] args) {
System.out.println(1 + 2);
}
}

OUTPUT:
3
Basic Arithmetics
•
•
•
•
•

Addition: 2 + 3
Subtraction: 4 - 5
Multiplication: 6 * 7
Division: 8 / 4
Remainder: 5 % 3
How about 2 + 3 * 4 ?
• Does precedence matter?
• Can we solve precedence with parentheses?
Variable Types
•
•
•
•
•

Integers: byte, short, int, long
Floating-point numbers: float, double
Single character: char
Text: String
True/False: boolean
Floating-Point Numbers
• You can also use numbers with decimal points:
2.3, –1.5
• Integers:
…, -3, -2, -1, 0, 1, 2, 3, …
• Real numbers:
0.0, 3.14, -2.4, 327.8
Floating-Point Numbers
• What is 3.0 / 4.0 in Java?
• How about 3 / 4 ?
Declaring and Using Variables
Name of variables
- Not preserve words
- Must begin with letters or ‘_’ or ‘$’
<data_type> <variable name>;

- Example:
int x ;
double pi_1 ;
char ch2
boolean a ;
Declaring and Using Variables
Assignment
- Variable or numeric primitive type
- Combination of values and/or variable with
numeric operators
<variable_name> = <variable or value>

- Example:
x = 10 ;
pi = 3.14159 + 0.11 ;
char a = „b‟ ;
y = x ;
Declaring and Using Variables
int x;
int y;
int z;
x = 2;
y = 5;
z = x + y;
System.out.println(x + " + “ + y + " = “ + z);

OUTPUT:
2 + 5 = 7
Multiple Variable Declarations
Instead of
int x;
int y;
int z;

You can also use
int x, y, z;

to declare multiple variables all at once.
Variable Initialization
Instead of
int x;
int y;
x = 2;
y = 5;

You can also use
int x = 2, y = 5;
Shorthand Operators
Operator
+=
-=
*=
/=
%=

Example
i += 8
i -= 8.0
i *= 8
i /= 8
i %= 8

Equivalent
i=i+8
i = i - 8.0
i=i*8
i=i/8
i=i%8
Shorthand Operators
• ++var
• var++
• --var
• var--
Shorthand Operators
Example:

++var

int x = 3;
System.out.print(x);
// 3
System.out.print(++x); // 4
System.out.print(x)
// 4
Shorthand Operators
Example:

var++

int x = 3;
System.out.print(x);
// 3
System.out.print(x++); // 3
System.out.print(x)
// 4
Type conversion
Use only primitive data type except boolean

- (<type>)<expression>

 casting

=

Ex.

int i = „a‟; //

i
a
x
y

=
=
=
=

i = 97

(int)‟B‟; // i = 66
(char)80 ; // a = „P‟
(int)1.2 ; // x = 1
(double)2; // y = 2.0

• The variable to keep converted type value must be
the type that can keep the value.
Character and String
• Use char type to keep an ASCII character
• Use String type to keep characters (text)
• char type is capable with arithmetic operator

Example:
char ch = „B‟;
System.out.println((char)(ch + 1)); // „C‟
String s = “This is a sentence.”;
Getting Inputs from the User
import java.util.Scanner;
public class Program {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
x = x * 2;
System.out.println(x);
}
}
INPUT:
5
OUTPUT: 10
Multiple Inputs
import java.util.Scanner;
public class Program {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int x = sc.nextInt();
int y = sc.nextInt();
System.out.println(x);
System.out.println(y);
}
}
INPUT:
1
OUTPUT:
1
2
2
Inputting Text
import java.util.Scanner;
public class Program {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("Enter your name: ");
String name = sc.nextLine();
System.out.println("Hello, "+ name + "!");
}
}
INPUT:
John
OUTPUT: Hello, John!
Give it a try!
• Write a program to get 2 numbers from the user and
output the sum, the difference, the product, and the
quotient of those 2 numbers.
• Hint: Follow the previous example.
INPUT:
OUTPUT:

7
5
7
7
7
7

+
*
/

5
5
5
5

=
=
=
=

12
2
35
1.4
Programming Errors
• Most common for us.
• Syntax error, Runtime error, Logic error
Chapter 2: Selections
Introducing boolean Data Type
• Normally you can use int to store integer
numbers, double to store floating-point
numbers.
• What if all you want is to store a truth
value: either true or false?
Answer: use boolean data type
Boolean Expressions
• Expression that return boolean value
(True/False)
• Operators:
-

<
-!
<=
- &&
>
- ||
>=
-^
== (not same with one = the assignment operator)
!=

• Precedence matters.
Do/Don’t?
• Sometimes you will want your program
to decide whether to do something or
not based on some conditions.
General Form of if
if(condition) {

statements to do if condition is true
}
If This Then Do That
if (1 == 2) {
System.out.println("1 is equal to 2");
if (1 != 2) {
System.out.println("1 is not equal to 2");

OUTPUT:
1 is not equal to 2
General Form of if-else
if(condition) {

statements to do if condition is true
} else{

statements to do if condition is false
}
Do This or That
if (1 == 2) {
System.out.println("1 is equal to 2");
} else {
System.out.println("1 is not equal to 2");
}

OUTPUT:
1 is not equal to 2
General Form of if-elseif-else
if(condition 1) {

statements to do if condition 1 is true
} else if (condition 2) {
statements to do if condition 2 is true
} else if (condition 3) {
statements to do if condition 3 is true
} else{

statements to do if none of the conditions is
true
}
// You can have as many conditions as you like!
Do This or This, otherwise That
if (3 < 2) {
System.out.println("3 is less than 2");
} else if (3 > 2) {
System.out.println("3 is greater than 2");
} else{
System.out.println("3 is equal to 2");
}

OUTPUT:
3 is greater than 2
Using boolean Data Type
boolean check = (1 < 2);
if(check) {
System.out.println("1 < 2");
} else{
System.out.println("1 >= 2");
}

• The condition part of the if statement can be a
boolean expression (1 < 2) or a boolean variable
(check)!
Condition with Multiple Cases
• In some cases, you may need multiple
condition statements to achieve your goals.
• Writing them as multiple else-if statements
can be tedious.
• Use of switch statement is recommended
(with some exceptions).
General Form of switch
switch (expression) {
// expression can be int, char, or boolean
case value1:

statements to do when expression == value1
break;
case value2:

statements to do when expression == value2
break;
// add more cases as needed
default:

statements to do when nothing above matches
}
Example Usage of switch
// imported Scanner and instantiated one
System.out.print("Enter a number between 1 –3: ");
int x = sc.nextInt();
switch (x) {
case 1 : System.out.println("Entered 1");
break;
case 2 : System.out.println("Entered 2");
break;
case 3 : System.out.println("Entered 3");
break;
default: System.out.println("Entered else...");
}
Conditional Operator
• Also known as expression shortcut
• General form:
expression ? value_true : value_false
Conditional Operator
Instead of writing
int x = 0;
int y;
if(x == 0) {
y = 0;
} else {
y = x;
}

You can also use this:
int x = 0;
int y = x == 0 ? 0 : x;
Give it a try!
• Write a program to get 3 numbers: x, y, and z. The
program should output whether x + y = z or not.
• Can you do this with a switch statement?
INPUT:
3
4
8

OUTPUT:
3 + 4 != 8
Chapter 3: Repetition, Iteration, Loops
Iteration Fundamentals
• Sometimes you need to do certain things over
and over again, probably in the same or
similar manner.
• Writing 1000 Java statements to display
numbers 1 to 1000 is not feasible: you
wouldn't want to try to copy-and-paste the
code thousand times.
• In this case, you can make use of the iteration
feature of Java instead.
General Form of while
while (condition) {
statements to do while the condition is true

}
Example While 1-100
int i= 1;
while (i<= 100) {
System.out.println(i);
i= i+ 1;
}

OUTPUT:
1
2
3
…
100
Infinite Loop
• Get stuck in an infinite loop because
condition to exit the loop is tend to never met.
• Should use condition that can exit the loop.
(e.g.: exit when a value of variable exceed
max, when the value hit 0 or something)
General Form of do-while
do{

statements to do, and to continue to do while
the condition is true
} while (condition);
Example Do-while 1-100
int i= 1;
do {
System.out.println(i);
i= i+ 1;
} while (i <= 100);

OUTPUT:
1
2
3
…
100
While and do-while differences
• For the while loop, the condition is checked
before any statement is executed. Therefore, if
the condition is false in the first place, no
statement in the loop will be executed.
• For the do-while loop, in contrast, the
statements in the loop are executed once at
first. Then, for each iteration, the condition is
checked in the same way as in the while loop.
General Form of for
for (initialization; condition; iteration) {

statements to do as long as condition is true
}
1 –100 using for
Use
for (int i = 1; i <= 100; i++) {
System.out.println(i);
}

Instead of
int i= 1;
while (i<= 1000) {
System.out.println(i);
i++; // Same as i= i+ 1;
}

• Each type of loop can be written in another type of
loop equivalently
Give it a try!
• Write a game that let the player "guess" a random number
generated by the computer between 1 and 100. Each turn,
display whether the input number is less than or greater than
the random one. Game ends when the player guesses
correctly. Otherwise, keep asking for another number.
• To random a number between 5 to 70:
– int x = (int) (Math.random() * (70 – 5 + 1) + 5);

• Optional features:
– The allowed min and max should change accordingly for
each turn. For example, if the random number is 40, and
the user guesses 50, the game should now allow only
numbers between 1 and 49 in the next turn.

Mais conteúdo relacionado

Mais procurados

Nesting of if else statement & Else If Ladder
Nesting of if else statement & Else If Ladder Nesting of if else statement & Else If Ladder
Nesting of if else statement & Else If Ladder Vishvesh Jasani
 
Conditional and control statement
Conditional and control statementConditional and control statement
Conditional and control statementnarmadhakin
 
Control structures in C++ Programming Language
Control structures in C++ Programming LanguageControl structures in C++ Programming Language
Control structures in C++ Programming LanguageAhmad Idrees
 
Control structure of c
Control structure of cControl structure of c
Control structure of cKomal Kotak
 
Java conditional statements
Java conditional statementsJava conditional statements
Java conditional statementsKuppusamy P
 
Simple if else statement,nesting of if else statement &amp; else if ladder
Simple if else statement,nesting of if else statement &amp; else if ladderSimple if else statement,nesting of if else statement &amp; else if ladder
Simple if else statement,nesting of if else statement &amp; else if ladderMoni Adhikary
 
Structure in programming in c or c++ or c# or java
Structure in programming  in c or c++ or c# or javaStructure in programming  in c or c++ or c# or java
Structure in programming in c or c++ or c# or javaSamsil Arefin
 
Control Structures
Control StructuresControl Structures
Control StructuresGhaffar Khan
 
12. Java Exceptions and error handling
12. Java Exceptions and error handling12. Java Exceptions and error handling
12. Java Exceptions and error handlingIntro C# Book
 
Control structures i
Control structures i Control structures i
Control structures i Ahmad Idrees
 
C Programming: Control Structure
C Programming: Control StructureC Programming: Control Structure
C Programming: Control StructureSokngim Sa
 
Control and conditional statements
Control and conditional statementsControl and conditional statements
Control and conditional statementsrajshreemuthiah
 

Mais procurados (20)

Control statements in java programmng
Control statements in java programmngControl statements in java programmng
Control statements in java programmng
 
Nesting of if else statement & Else If Ladder
Nesting of if else statement & Else If Ladder Nesting of if else statement & Else If Ladder
Nesting of if else statement & Else If Ladder
 
Conditional and control statement
Conditional and control statementConditional and control statement
Conditional and control statement
 
Control structures in C++ Programming Language
Control structures in C++ Programming LanguageControl structures in C++ Programming Language
Control structures in C++ Programming Language
 
Unit iii
Unit iiiUnit iii
Unit iii
 
Control structure of c
Control structure of cControl structure of c
Control structure of c
 
Control structure in c
Control structure in cControl structure in c
Control structure in c
 
Java conditional statements
Java conditional statementsJava conditional statements
Java conditional statements
 
Simple if else statement,nesting of if else statement &amp; else if ladder
Simple if else statement,nesting of if else statement &amp; else if ladderSimple if else statement,nesting of if else statement &amp; else if ladder
Simple if else statement,nesting of if else statement &amp; else if ladder
 
Structure in programming in c or c++ or c# or java
Structure in programming  in c or c++ or c# or javaStructure in programming  in c or c++ or c# or java
Structure in programming in c or c++ or c# or java
 
Control structure
Control structureControl structure
Control structure
 
Control structures in c
Control structures in cControl structures in c
Control structures in c
 
Control Structures
Control StructuresControl Structures
Control Structures
 
Java control flow statements
Java control flow statementsJava control flow statements
Java control flow statements
 
Control structures in C
Control structures in CControl structures in C
Control structures in C
 
12. Java Exceptions and error handling
12. Java Exceptions and error handling12. Java Exceptions and error handling
12. Java Exceptions and error handling
 
Control structures i
Control structures i Control structures i
Control structures i
 
C Programming: Control Structure
C Programming: Control StructureC Programming: Control Structure
C Programming: Control Structure
 
Operators in java
Operators in javaOperators in java
Operators in java
 
Control and conditional statements
Control and conditional statementsControl and conditional statements
Control and conditional statements
 

Semelhante a JPC#8 Introduction to Java Programming

Control Structures in C
Control Structures in CControl Structures in C
Control Structures in Csana shaikh
 
C++ decision making
C++ decision makingC++ decision making
C++ decision makingZohaib Ahmed
 
Repetition Structure
Repetition StructureRepetition Structure
Repetition StructurePRN USM
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentalsHCMUTE
 
ch04-conditional-execution.ppt
ch04-conditional-execution.pptch04-conditional-execution.ppt
ch04-conditional-execution.pptMahyuddin8
 
C Sharp Jn (3)
C Sharp Jn (3)C Sharp Jn (3)
C Sharp Jn (3)jahanullah
 
Java căn bản - Chapter6
Java căn bản - Chapter6Java căn bản - Chapter6
Java căn bản - Chapter6Vince Vo
 
Control statements
Control statementsControl statements
Control statementsraksharao
 
Unit 2-data types,Variables,Operators,Conitionals,loops and arrays
Unit 2-data types,Variables,Operators,Conitionals,loops and arraysUnit 2-data types,Variables,Operators,Conitionals,loops and arrays
Unit 2-data types,Variables,Operators,Conitionals,loops and arraysDevaKumari Vijay
 
Programming ppt files (final)
Programming ppt files (final)Programming ppt files (final)
Programming ppt files (final)yap_raiza
 
12 lec 12 loop
12 lec 12 loop 12 lec 12 loop
12 lec 12 loop kapil078
 
control statements
control statementscontrol statements
control statementsAzeem Sultan
 

Semelhante a JPC#8 Introduction to Java Programming (20)

Control statments in c
Control statments in cControl statments in c
Control statments in c
 
Data structures
Data structuresData structures
Data structures
 
Control Structures in C
Control Structures in CControl Structures in C
Control Structures in C
 
C++ decision making
C++ decision makingC++ decision making
C++ decision making
 
Repetition Structure
Repetition StructureRepetition Structure
Repetition Structure
 
Java fundamentals
Java fundamentalsJava fundamentals
Java fundamentals
 
Oop object oriented programing topics
Oop object oriented programing topicsOop object oriented programing topics
Oop object oriented programing topics
 
ch04-conditional-execution.ppt
ch04-conditional-execution.pptch04-conditional-execution.ppt
ch04-conditional-execution.ppt
 
C Sharp Jn (3)
C Sharp Jn (3)C Sharp Jn (3)
C Sharp Jn (3)
 
Java căn bản - Chapter6
Java căn bản - Chapter6Java căn bản - Chapter6
Java căn bản - Chapter6
 
3 flow
3 flow3 flow
3 flow
 
3 flow
3 flow3 flow
3 flow
 
Loops
LoopsLoops
Loops
 
Comp102 lec 6
Comp102   lec 6Comp102   lec 6
Comp102 lec 6
 
Control statements
Control statementsControl statements
Control statements
 
Unit 2-data types,Variables,Operators,Conitionals,loops and arrays
Unit 2-data types,Variables,Operators,Conitionals,loops and arraysUnit 2-data types,Variables,Operators,Conitionals,loops and arrays
Unit 2-data types,Variables,Operators,Conitionals,loops and arrays
 
Programming ppt files (final)
Programming ppt files (final)Programming ppt files (final)
Programming ppt files (final)
 
00_Introduction to Java.ppt
00_Introduction to Java.ppt00_Introduction to Java.ppt
00_Introduction to Java.ppt
 
12 lec 12 loop
12 lec 12 loop 12 lec 12 loop
12 lec 12 loop
 
control statements
control statementscontrol statements
control statements
 

Mais de Pathomchon Sriwilairit

Mais de Pathomchon Sriwilairit (6)

Social Networks: Opinion Presentation
Social Networks: Opinion PresentationSocial Networks: Opinion Presentation
Social Networks: Opinion Presentation
 
Will the tissue get wet? Mini-science experiment
Will the tissue get wet? Mini-science experimentWill the tissue get wet? Mini-science experiment
Will the tissue get wet? Mini-science experiment
 
JPC#8 Foundation of Computer Science
JPC#8 Foundation of Computer ScienceJPC#8 Foundation of Computer Science
JPC#8 Foundation of Computer Science
 
JQuery - Effect - Animate method
JQuery - Effect - Animate methodJQuery - Effect - Animate method
JQuery - Effect - Animate method
 
20131028 Techniques of Addictive Games
20131028 Techniques of Addictive Games20131028 Techniques of Addictive Games
20131028 Techniques of Addictive Games
 
20131014 Designing Slides Layout
20131014 Designing Slides Layout20131014 Designing Slides Layout
20131014 Designing Slides Layout
 

Último

Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppCeline George
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 

Último (20)

TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
URLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website AppURLs and Routing in the Odoo 17 Website App
URLs and Routing in the Odoo 17 Website App
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 

JPC#8 Introduction to Java Programming

  • 1. Introduction to Java Programming Junior Programmer Camp #8
  • 2. Chapter 1: Elementary Programming
  • 3. What is Java? • A high-level programming language • Useful for developing business applications • Java Development Kit download: http://www.oracle.com/technetwork/java/jav ase/downloads/index.html • Case sensitive
  • 4. What is DrJava? • A programming tool used for writing code in Java • Can be downloaded from www.drjava.org • Simple and easy to use for beginners
  • 6. Typical Java Code Skeleton public class Program{ public static void main(String[] args) { // your main code goes here
  • 7. Comments • Sometimes you may want to add some notes to your Java code, without any effect to the code. • In this case, you can write comments. Two ways: – System.out.println("test"); // print a test string – /* This is a multiple-line comment. More line Even more line Blah blah */
  • 8. Simple Program public class Program { public static void main(String[] args) { System.out.println(“Hello!! JPC#8"); } } OUTPUT: Hello!! JPC#8
  • 9. Basic Arithmetics public class Program { public static void main(String[] args) { System.out.println(1 + 2); } } OUTPUT: 3
  • 10. Basic Arithmetics • • • • • Addition: 2 + 3 Subtraction: 4 - 5 Multiplication: 6 * 7 Division: 8 / 4 Remainder: 5 % 3 How about 2 + 3 * 4 ? • Does precedence matter? • Can we solve precedence with parentheses?
  • 11. Variable Types • • • • • Integers: byte, short, int, long Floating-point numbers: float, double Single character: char Text: String True/False: boolean
  • 12. Floating-Point Numbers • You can also use numbers with decimal points: 2.3, –1.5 • Integers: …, -3, -2, -1, 0, 1, 2, 3, … • Real numbers: 0.0, 3.14, -2.4, 327.8
  • 13. Floating-Point Numbers • What is 3.0 / 4.0 in Java? • How about 3 / 4 ?
  • 14. Declaring and Using Variables Name of variables - Not preserve words - Must begin with letters or ‘_’ or ‘$’ <data_type> <variable name>; - Example: int x ; double pi_1 ; char ch2 boolean a ;
  • 15. Declaring and Using Variables Assignment - Variable or numeric primitive type - Combination of values and/or variable with numeric operators <variable_name> = <variable or value> - Example: x = 10 ; pi = 3.14159 + 0.11 ; char a = „b‟ ; y = x ;
  • 16. Declaring and Using Variables int x; int y; int z; x = 2; y = 5; z = x + y; System.out.println(x + " + “ + y + " = “ + z); OUTPUT: 2 + 5 = 7
  • 17. Multiple Variable Declarations Instead of int x; int y; int z; You can also use int x, y, z; to declare multiple variables all at once.
  • 18. Variable Initialization Instead of int x; int y; x = 2; y = 5; You can also use int x = 2, y = 5;
  • 19. Shorthand Operators Operator += -= *= /= %= Example i += 8 i -= 8.0 i *= 8 i /= 8 i %= 8 Equivalent i=i+8 i = i - 8.0 i=i*8 i=i/8 i=i%8
  • 20. Shorthand Operators • ++var • var++ • --var • var--
  • 21. Shorthand Operators Example: ++var int x = 3; System.out.print(x); // 3 System.out.print(++x); // 4 System.out.print(x) // 4
  • 22. Shorthand Operators Example: var++ int x = 3; System.out.print(x); // 3 System.out.print(x++); // 3 System.out.print(x) // 4
  • 23. Type conversion Use only primitive data type except boolean - (<type>)<expression>  casting = Ex. int i = „a‟; // i a x y = = = = i = 97 (int)‟B‟; // i = 66 (char)80 ; // a = „P‟ (int)1.2 ; // x = 1 (double)2; // y = 2.0 • The variable to keep converted type value must be the type that can keep the value.
  • 24. Character and String • Use char type to keep an ASCII character • Use String type to keep characters (text) • char type is capable with arithmetic operator Example: char ch = „B‟; System.out.println((char)(ch + 1)); // „C‟ String s = “This is a sentence.”;
  • 25. Getting Inputs from the User import java.util.Scanner; public class Program { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int x = sc.nextInt(); x = x * 2; System.out.println(x); } } INPUT: 5 OUTPUT: 10
  • 26. Multiple Inputs import java.util.Scanner; public class Program { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int x = sc.nextInt(); int y = sc.nextInt(); System.out.println(x); System.out.println(y); } } INPUT: 1 OUTPUT: 1 2 2
  • 27. Inputting Text import java.util.Scanner; public class Program { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("Enter your name: "); String name = sc.nextLine(); System.out.println("Hello, "+ name + "!"); } } INPUT: John OUTPUT: Hello, John!
  • 28. Give it a try! • Write a program to get 2 numbers from the user and output the sum, the difference, the product, and the quotient of those 2 numbers. • Hint: Follow the previous example. INPUT: OUTPUT: 7 5 7 7 7 7 + * / 5 5 5 5 = = = = 12 2 35 1.4
  • 29. Programming Errors • Most common for us. • Syntax error, Runtime error, Logic error
  • 31. Introducing boolean Data Type • Normally you can use int to store integer numbers, double to store floating-point numbers. • What if all you want is to store a truth value: either true or false? Answer: use boolean data type
  • 32. Boolean Expressions • Expression that return boolean value (True/False) • Operators: - < -! <= - && > - || >= -^ == (not same with one = the assignment operator) != • Precedence matters.
  • 33. Do/Don’t? • Sometimes you will want your program to decide whether to do something or not based on some conditions.
  • 34. General Form of if if(condition) { statements to do if condition is true }
  • 35. If This Then Do That if (1 == 2) { System.out.println("1 is equal to 2"); if (1 != 2) { System.out.println("1 is not equal to 2"); OUTPUT: 1 is not equal to 2
  • 36. General Form of if-else if(condition) { statements to do if condition is true } else{ statements to do if condition is false }
  • 37. Do This or That if (1 == 2) { System.out.println("1 is equal to 2"); } else { System.out.println("1 is not equal to 2"); } OUTPUT: 1 is not equal to 2
  • 38. General Form of if-elseif-else if(condition 1) { statements to do if condition 1 is true } else if (condition 2) { statements to do if condition 2 is true } else if (condition 3) { statements to do if condition 3 is true } else{ statements to do if none of the conditions is true } // You can have as many conditions as you like!
  • 39. Do This or This, otherwise That if (3 < 2) { System.out.println("3 is less than 2"); } else if (3 > 2) { System.out.println("3 is greater than 2"); } else{ System.out.println("3 is equal to 2"); } OUTPUT: 3 is greater than 2
  • 40. Using boolean Data Type boolean check = (1 < 2); if(check) { System.out.println("1 < 2"); } else{ System.out.println("1 >= 2"); } • The condition part of the if statement can be a boolean expression (1 < 2) or a boolean variable (check)!
  • 41. Condition with Multiple Cases • In some cases, you may need multiple condition statements to achieve your goals. • Writing them as multiple else-if statements can be tedious. • Use of switch statement is recommended (with some exceptions).
  • 42. General Form of switch switch (expression) { // expression can be int, char, or boolean case value1: statements to do when expression == value1 break; case value2: statements to do when expression == value2 break; // add more cases as needed default: statements to do when nothing above matches }
  • 43. Example Usage of switch // imported Scanner and instantiated one System.out.print("Enter a number between 1 –3: "); int x = sc.nextInt(); switch (x) { case 1 : System.out.println("Entered 1"); break; case 2 : System.out.println("Entered 2"); break; case 3 : System.out.println("Entered 3"); break; default: System.out.println("Entered else..."); }
  • 44. Conditional Operator • Also known as expression shortcut • General form: expression ? value_true : value_false
  • 45. Conditional Operator Instead of writing int x = 0; int y; if(x == 0) { y = 0; } else { y = x; } You can also use this: int x = 0; int y = x == 0 ? 0 : x;
  • 46. Give it a try! • Write a program to get 3 numbers: x, y, and z. The program should output whether x + y = z or not. • Can you do this with a switch statement? INPUT: 3 4 8 OUTPUT: 3 + 4 != 8
  • 47. Chapter 3: Repetition, Iteration, Loops
  • 48. Iteration Fundamentals • Sometimes you need to do certain things over and over again, probably in the same or similar manner. • Writing 1000 Java statements to display numbers 1 to 1000 is not feasible: you wouldn't want to try to copy-and-paste the code thousand times. • In this case, you can make use of the iteration feature of Java instead.
  • 49. General Form of while while (condition) { statements to do while the condition is true }
  • 50. Example While 1-100 int i= 1; while (i<= 100) { System.out.println(i); i= i+ 1; } OUTPUT: 1 2 3 … 100
  • 51. Infinite Loop • Get stuck in an infinite loop because condition to exit the loop is tend to never met. • Should use condition that can exit the loop. (e.g.: exit when a value of variable exceed max, when the value hit 0 or something)
  • 52. General Form of do-while do{ statements to do, and to continue to do while the condition is true } while (condition);
  • 53. Example Do-while 1-100 int i= 1; do { System.out.println(i); i= i+ 1; } while (i <= 100); OUTPUT: 1 2 3 … 100
  • 54. While and do-while differences • For the while loop, the condition is checked before any statement is executed. Therefore, if the condition is false in the first place, no statement in the loop will be executed. • For the do-while loop, in contrast, the statements in the loop are executed once at first. Then, for each iteration, the condition is checked in the same way as in the while loop.
  • 55. General Form of for for (initialization; condition; iteration) { statements to do as long as condition is true }
  • 56. 1 –100 using for Use for (int i = 1; i <= 100; i++) { System.out.println(i); } Instead of int i= 1; while (i<= 1000) { System.out.println(i); i++; // Same as i= i+ 1; } • Each type of loop can be written in another type of loop equivalently
  • 57. Give it a try! • Write a game that let the player "guess" a random number generated by the computer between 1 and 100. Each turn, display whether the input number is less than or greater than the random one. Game ends when the player guesses correctly. Otherwise, keep asking for another number. • To random a number between 5 to 70: – int x = (int) (Math.random() * (70 – 5 + 1) + 5); • Optional features: – The allowed min and max should change accordingly for each turn. For example, if the random number is 40, and the user guesses 50, the game should now allow only numbers between 1 and 49 in the next turn.