Just Enough Java 17-Apr-17.

Slides:



Advertisements
Similar presentations
AP Computer Science Anthony Keen. Computer 101 What happens when you turn a computer on? –BIOS tries to start a system loader –A system loader tries to.
Advertisements

 2005 Pearson Education, Inc. All rights reserved Introduction.
1 Chapter 2 Introduction to Java Applications Introduction Java application programming Display ____________________ Obtain information from the.
10-Jun-15 Just Enough Java. Variables A variable is a “box” that holds data Every variable has a name Examples: name, age, address, isMarried Variables.
Introduction to Programming with Java, for Beginners Primitive Types Expressions Statements Variables Strings.
10-Jun-15 Introduction to Primitives. 2 Overview Today we will discuss: The eight primitive types, especially int and double Declaring the types of variables.
11-Jun-15 Just Enough Java. 2 What is Java? Java is a programming language: a language that you can learn to write, and the computer can be made to understand.
1 Chapter 4 Language Fundamentals. 2 Identifiers Program parts such as packages, classes, and class members have names, which are formally known as identifiers.
Introduction to Primitives. Overview Today we will discuss: –The eight primitive types, especially int and double –Declaring the types of variables –Operations.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Adrian Ilie COMP 14 Introduction to Programming Adrian Ilie June 27, 2005.
28-Jun-15 Using Objects. 2 Overview In this presentation we will discuss: Classes and objects Methods for objects Printing results.
29-Jun-15 Using Objects. 2 Classes and objects The type of an object is the class that describes that object If we say int count, the type of count is.
Fundamental Programming Structures in Java: Comments, Data Types, Variables, Assignments, Operators.
CS 106 Introduction to Computer Science I 09 / 11 / 2006 Instructor: Michael Eckmann.
COMP 14: Primitive Data and Objects May 24, 2000 Nick Vallidis.
1 The First Step Learning objectives write Java programs that display text on the screen. distinguish between the eight built-in scalar types of Java;
Condensed Java 19-Apr-17.
Chapter 2: Basic Elements of Java J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design, Second Edition.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
CIS 260: App Dev I. 2 Programs and Programming n Program  A sequence of steps designed to accomplish a task n Program design  A detailed _____ for implementing.
Making Decisions Chapter 5.  Thus far we have created classes and performed basic mathematical operations  Consider our ComputeArea.java program to.
CIS 260: App Dev I. 2 Programs and Programming n Program  A sequence of steps designed to accomplish a task n Program design  A detailed _____ for implementing.
Java Programming: From Problem Analysis to Program Design, 4e Chapter 2 Basic Elements of Java.
A First Look at Java Chapter 2 1/29 & 2/2 Imagine! Java: Programming Concepts in Context by Frank M. Carrano, (c) Pearson Education - Prentice Hall, 2010.
Using Data Within a Program Chapter 2.  Classes  Methods  Statements  Modifiers  Identifiers.
 Pearson Education, Inc. All rights reserved Introduction to Java Applications.
Building Java Programs Primitive Data and Definite Loops.
Copyright 2008 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading:
1 Chapter 3 Syntax, Errors, and Debugging Fundamentals of Java: AP Computer Science Essentials, 4th Edition Lambert / Osborne.
Copyright 2010 by Pearson Education 1 Building Java Programs Chapter 2 Lecture 2-1: Expressions and Variables reading:
16-Jan-16 Just Enough Java. 2 What is Java? Java is a programming language: a language that you can learn to write, and the computer can be made to understand.
CIT 590 Intro to Programming Lecture 13. Some Eclipse shortcuts CTRL + SHIFT + F – format file (proper indentation etc). Please do this before you submit.
1 Week 5 l Primitive Data types l Assignment l Expressions l Documentation & Style Primitive Types, Assignments, and Expressions.
Programming Fundamentals. The setw Manipulator setw changes the field width of output. The setw manipulator causes the number (or string) that follows.
Introduction to Java Applications Part II. In this chapter you will learn:  Different data types( Primitive data types).  How to declare variables?
Condensed Java With comparisons to Scala 4-Feb-16.
CS 106 Introduction to Computer Science I 09 / 10 / 2007 Instructor: Michael Eckmann.
Java Programming: From Problem Analysis to Program Design, Second Edition 1 Lecture 1 Objectives  Become familiar with the basic components of a Java.
1 Flow of Control Chapter 5. 2 Objectives You will be able to: Use the Java "if" statement to control flow of control within your program.  Use the Java.
1 Agenda  Unit 7: Introduction to Programming Using JavaScript T. Jumana Abu Shmais – AOU - Riyadh.
Just Enough Java 29-Sep-17.
CompSci 230 S Programming Techniques
Chapter 2 Basic Computation
CS0007: Introduction to Computer Programming
Some Eclipse shortcuts
Introduction to Computer Science / Procedural – 67130
Yanal Alahmad Java Workshop Yanal Alahmad
Multiple variables can be created in one declaration
Primitive Data, Variables, Loops (Maybe)
Lecture Sep-18.
Lecture Nov-18.
CIT 590 (basic Java syntax)
Lecture Nov-18.
Chapter 2 Edited by JJ Shepherd
Sudden Java 27-Nov-18.
Building Java Programs
MSIS 655 Advanced Business Applications Programming
Sudden Java 4-Dec-18.
Condensed Java 7-Dec-18.
Building Java Programs Chapter 2
Chapter 2 Programming Basics.
Building Java Programs
Introduction to Primitives
Fundamental OOP Programming Structures in Java: Comments, Data Types, Variables, Assignments, Operators.
Introduction to Primitives
In this class, we will cover:
Unit 3: Variables in Java
Building Java Programs Chapter 2
Just Enough Java 17-May-19.
Presentation transcript:

Just Enough Java 17-Apr-17

What is Java? Java is a programming language: a language that you can learn to write, and the computer can be made to understand Java is currently a very popular language Java is a large, powerful language but it is not simple! Compared to C++, Java is elegant

Structure of a Java program A simple program consists of a single package Package = directory = folder A package contains one or more classes A class contains one or more fields and methods A method contains declarations and statements Classes and methods may also contain comments We’ll begin by looking at the “insides” of methods • packages • classes • fields • methods • declarations • statements

Java structure and Eclipse A workspace is where Eclipse keeps projects When you use Eclipse to create a project (a single “program”), it creates a directory with that name in your workspace When you use Eclipse to create a class, it creates a file in the project directory that has the same name as the class When you create a class and don’t specify a “package” name, Eclipse complains The use of the default package is discouraged. Ignore this message for now.

Simple program outline main method class MyClass { public static void main(String[ ] args) { new MyClass().run(); } void run() { // some declarations and statements go here // this is the part we will talk about today } } another method Notes: The class name (MyClass) must begin with a capital main and run are methods This is the form we will use for now Once you understand all the parts, you can vary things

Syntax and semantics Syntax is the “grammar” of the language The syntax of Java is large, but finite Syntax must be absolutely correct The computer will point out every syntax error Error messages may be helpful or misleading Semantics is the “meaning” of your program Semantic errors cause your answers to be wrong You may or may not get error messages

Two aspects of Java Java has syntax and semantics This is where you begin It is possible to learn everything about Java’s syntax and semantics We will cover most of Java’s syntax and semantics Java comes with many built-in “packages” Packages are sort of like vocabulary bundles To be good at Java, you need to learn many packages There are more Java packages than you can ever learn

What you need to know You need to be able to: Read in data (for now, numbers) We will use a Scanner for this Save numbers in variables We will use declarations to create variables Do arithmetic on numbers to get new numbers We will use assignment statements Test whether or not to do something We will use if statements Do something repeatedly We will use while statements Print output We will use System.out.print and System.out.println Not absolutely necessary, but very helpful: We will use methods

Declarations, statements, comments A declaration gives some information to the computer A statement tells the computer to do something Statements should really be called “commands” Comments are ignored by the computer—they are explanations of your program for human beings to read A method may contain declarations, statements, and comments

Variables A variable is a “box” that holds data Every variable has a name Examples: name, age, address, isMarried Variables start with a lowercase letter In multiword variables, each new word is capitalized Every variable has a type of value that it can hold For example, name might be a variable that holds a String (sequence of characters) age might be a variable that holds an integer value isMarried might be a variable that holds a boolean (true or false) value

Some Java data types In Java, the four most important primitive (simple) types are: int variables hold integer values double variables hold floating-point numbers, that is, numbers containing a decimal point boolean variables hold a true or false value char variables hold single characters Another important type is the String A String is an Object, not a primitive type A String is composed of zero or more chars

Declaring variables Every variable that you use in a program must be declared (in a declaration) The declaration specifies the type of the variable The declaration may give the variable an initial value Examples: int age; int count = 0; double distance = 37.95; boolean isReadOnly = true; String greeting = "Welcome to CIT 591"; String outputLine;

Reading in numbers First, import the Scanner class: import java.util.Scanner; Create a scanner and assign it to a variable: Scanner scanner = new Scanner(System.in); The name of our scanner is scanner new Scanner(...) says to make a new one System.in says the scanner is to take input from the keyboard Next, it’s polite to tell the user what is expected: System.out.print("Enter a number: "); Finally, read in the number: myNumber = scanner.nextInt(); If you haven’t previously declared the variable myNumber, you can do it when you read in the number: int myNumber = scanner.nextInt();

Printing There are two methods you can use for printing: System.out.println(something); This prints something and ends the line System.out.print(something); This prints something and doesn’t end the line (so the next thing you print will go on the same line) These methods will print anything, but only one thing at a time You can concatenate things with the + operator Example: System.out.println("There are " + appleCount + " apples and " + orangeCount + " oranges.");

Program to double a number import java.util.Scanner; public class Doubler { public static void main(String[] args) { new Doubler().run(); } private void run() { Scanner scanner; int number; int doubledNumber; scanner = new Scanner(System.in); System.out.print("Enter a number: "); number = scanner.nextInt(); doubledNumber = 2 * number; System.out.println("Twice " + number + " is " + doubledNumber); } }

Assignment statements Values can be assigned to variables by assignment statements The syntax is: variable = expression; The expression must be of the same type as the variable The expression may be a simple value or it may involve computation Examples: name = "Dave"; count = count + 1; area = (4.0 / 3.0) * 3.1416 * radius * radius; isReadOnly = false; When a variable is assigned a value, the old value is discarded and totally forgotten

One-line comments A comment is a note to any human reading the program; comments are ignored by Java A single-line comment starts with // and goes to the end of the line A comment may be put after a statement (on the same line) to say something about that one statement A comment may be put on a line by itself, to say something about the following statements Example: // Swap the values of x and y temp = x; // save old value of x in temp x = y; // replace old value of x with y y = temp; // this many comments is just silly

Other kinds of comments A multiline comment starts with /* and ends with */ Typically, these comments extend over several lines /* Here is an example of a multiline comment. It isn’t a very inspired one, but I needed an example of some sort. */ A special kind of multiline comment, called a documentation comment or Javadoc comment, starts with /** and ends with */ Note the extra asterisk at the beginning\ We will discuss the use of documentation comments later

Methods A method is a named group of declarations and statements void tellWhatYearItIs( ) { int year = 2006; System.out.println("Hello in " + year + "!"); } We “call,” or “invoke” a method by naming it in a statement: tellWhatYearItIs( ); This should print out Hello in 2006!

Organization of a class A class may contain data declarations and methods (and constructors, which are like methods), but not statements A method may contain (temporary) data declarations and statements A common error: class Example { int variable ; // simple declaration is OK int anotherVariable= 5; // declaration with initialization is OK variable = 5; // statement! This is a syntax error void someMethod( ) { int yetAnotherVariable; //declaration is OK yetAnotherVariable = 5; // statement inside method is OK } }

Arithmetic expressions Arithmetic expressions may contain: + to indicate addition - to indicate subtraction * to indicate multiplication / to indicate division % to indicate remainder of a division (integers only) parentheses ( ) to indicate the order in which to do things An operation involving two ints results in an int When dividing one int by another, the fractional part of the result is thrown away: 14 / 5 gives 2 Any operation involving a double results in a double: 3.7 + 1 gives 4.7

Boolean expressions Arithmetic comparisons result in a boolean value of true or false There are six comparison operators: < less than <= less than or equals > greater than >= greater than or equals == equals != not equals There are three boolean operators: && “and”--true only if both operands are true || “or”--true if either operand is true ! “not”--reverses the truth value of its one operand Example: (x > 0) && !(x > 99) “x is greater than zero and is not greater than 99”

String concatenation You can concatenate (join together) Strings with the + operator Example: fullName = firstName + " " + lastName; In fact, you can concatenate any value with a String and that value will automatically be turned into a String Example: System.out.println("There are " + count + " apples."); Be careful, because + also still means addition int x = 3; int y = 5; System.out.println(x + y + " != " + x + y); The above prints 8 != 35 “Addition” is done left to right--use parentheses to change the order

if statements An if statement lets you choose whether or not to execute one statement, based on a boolean condition Syntax: if (boolean_condition) statement; Example: if (x < 100) x = x + 1; // adds 1 to x, but only if x is less than 100 C programmers take note: The condition must be boolean An if statement may have an optional else part, to be executed if the boolean condition is false Syntax: if (boolean_condition) statement; else statement; Example: if (x >= 0 && x < limit) y = x / limit; else System.out.println("x is out of range: " + x);

Compound statements Multiple statements can be grouped into a single statement by surrounding them with braces, { } Example: if (score > 100) { score = 100; System.out.println("score has been adjusted"); } Unlike other statements, there is no semicolon after a compound statement Braces can also be used around a single statement, or no statements at all (to form an “empty” statement) It is good style to always use braces in the if part and else part of an if statement, even if the surround only a single statement Indentation and spacing should be as shown in the above example

while loops A while loop will execute the enclosed statement as long as a boolean condition remains true Syntax: while (boolean_condition) statement; Example: n = 1; while (n < 5) { System.out.println(n + " squared is " + (n * n)); n = n + 1; } Result: 1 squared is 1 2 squared is 4 3 squared is 9 4 squared is 16 C programmers take note: The condition must be boolean Danger: If the condition never becomes false, the loop never exits, and the program never stops

Method calls A method call is a request to an object to do something, or to compute a value System.out.print(expression) is a method call; you are asking the System.out object to evaluate and display the expression A method call may be used as a statement Example: System.out.print(2 * pi * radius); Some method calls return a value, and those may be used as part of an expression Example: h = Math.sqrt(a * a + b * b);

A complete program public class SquareRoots { // Prints the square roots of numbers 1 to 10 public static void main(String args[]) { int n = 1; while (n <= 10) { System.out.println(n + " " + Math.sqrt(n)); n = n + 1; } } } 1 1.0 2 1.4142135623730951 3 1.7320508075688772 4 2.0 5 2.23606797749979 etc.

Another complete program public class LeapYear { public static void main(String[] args) { int start = 1990; int end = 2015; int year = start; boolean isLeapYear; while (year <= end) { isLeapYear = year % 4 == 0; // a leap year is a year divisible by 4... if (isLeapYear && year % 100 == 0) { // ...but not by 100... if (year % 400 == 0) isLeapYear = true; // ...unless it’s also divisible by 400 else isLeapYear = false; } if (isLeapYear) { System.out.println(year + " is a leap year."); year = year + 1; 1992 is a leap year. 1996 is a leap year. 2000 is a leap year. 2004 is a leap year. 2008 is a leap year. 2012 is a leap year.

The End