The Boolean Data Type - Brookwood High School

Download Report

Transcript The Boolean Data Type - Brookwood High School

College Board
A.P. Computer Science A Topics



Program Design - Read and understand a
problem's description, purpose, and goals.
Procedural Constructs - Constant
declarations ; Variable declarations
Standard Data Stuctures - Simple data types
(int, boolean, double)
Vocabulary & Terms








Reference
Variable
Keyword
Identifier
Data type
int
char
double




boolean
Object
Initializing a variable
Assignment operator
A reference variable refers to a location in
memory that stores an object.
Monster fred = new Monster();
Monster sally = new Monster();
In the above example Monster is a class.
fred and sally are references to Monster objects.
new is a keyword which is used to create an object. It is followed by
the constructor method, which is the class name, and parenthesis.
The first part: Monster fred – declares a reference variable to hold a
Monster object.
The second part: = new Monster(); - creates the Monster object, and
assigns fred to the location where this object is in memory.
Monster fred = new Monster();
fred
0xF5
0xF5
Monster
Monster fred creates a reference.
new Monster(); creates the Monster at location
0xF5.
The assignment operator (=) gives fred the
address 0xF5 to store
What is a variable?
A variable is a storage location for some type of
value. Type the statements below into the
interactions pane. Type the name of the variable to
see what is stored in the variable. What is stored in
yesOrNo?
int days = 102;
double taxRate = 7.75;
boolean yesOrNo;
days
taxRate
102
7.75
yesOrNo
int days = 102;
days
102
int days – declares days as a variable that
will store integer values.
= 102 assigns days to store the integer
value 102.
How do you name
variables when
defining them?
When naming a variable follow these rules and conventions:
• Make the variable name meaningful. That means that L is not a
meaningful variable name but length is meaningful. When reading
your program, I shouldn’t be guessing what the variable is meant to
hold.
• Start all variable names with a lower-case letter.
• Variable names may also contain letters, numbers and underscores.
• If a variable name is more than one word long, capitalize each of the
other words without adding any spaces.
Below are some examples of valid variable names:
number sum32 testAverage area_Of_Trapezoid
and below are some examples of invalid variable names:
2ndValue test Average question#2
Which of these would be legal
variable identifiers?
int 1stYear;
double jump Up;
double feet2Inches;
IDENTIFIER is a fancy
word for variable.
Java is case sensitive – it interprets
upper and lower case letters as
different letters.
Brandon does not equal brandon.
Brandon != brandon
Keywords are reserved words that the
language uses for a specific purpose.
You cannot use keywords as identifier names.
Some that you’ve seen are:
int double return void main public
static long break continue class
You can find the complete list of keywords here:
http://java.sun.com/docs/books/tutorial/java/nutsandbolts/_keywords.html
What is a data type?
byte
long
char
short
float
boolean
int
double
int num = 9;
double total = 3.4;
We will use int, double and boolean in this course.
TYPE
SIZE
RANGE
byte
8 bits
-128 to 127
short
16 bits
-32768 to 32767
int
32 bits
-2 billion to 2 billion
long
64 bits
-big to +big
Think about a light bulb. It has 2 states ON or
OFF. The same principals can be applied to a
computer. The electronic circuits are either On
or Off. Different combinations of On and Off
mean different things for the computer.
For the computer On is 1, and Off is 0. A
number system made up of 1’s and 0’s is
known as the Binary Number System. We use
the Decimal Number System: digits 0 – 9.
What is a BIT?
Each 1 or 0 is called a BIT. It is short hand… take the b at the
start of binary and the it at the end of digit… BIT = Binary
digIT.
Memory consists of bits and bytes.
1 byte = 8 bits
Every character on the keyboard has a binary digit associated
with it in accordance with the UNICODES.
Look at the following site:
http://www.neurophys.wisc.edu/comp/docs/ascii/#table
What is the Binary Number for the letter A? What about a? 7?
The more bits you have the more you can store.
int one = 120;
int two = 987123;
System.out.println(one);
System.out.println(two);
OUTPUT
120
987123
(Type the code above into the interactions
pane in Dr. Java and check your output.)
Type the following code into Dr. Java exactly as it is written. Compile the
code and run the program. Are the results what you expected?
//integer example
public class Integers
{
public static
{
int
int
int
void main(String args[])
one = 120; //legal assignment
two = 987123;
three = 999999999;
System.out.println(one);
System.out.println(two);
three = three * 3;
//creates an overflow error at runtime
System.out.println(three);
}
}
TYPE
SIZE
RANGE
float
32 bits
-big to +big
double
64 bits
-big to +big
Float has 7 digits of precision and double
has 15 digits of precision.
We are talking about decimal numbers now!
int can NOT store decimal numbers.
double one = 99.57;
double two = 3217;
double three = 23.32;
System.out.println(one);
System.out.println(two);
System.out.println(three);
OUTPUT
99.57
3217.0
23.32
(type the code above into the interactions
pane in Dr. Java and check your output.)
Type the following program into Dr. Java exactly as it is written. Compile
the code and then run the program. Are the results what you would have
expected?
//real number example
public class Reals
{
public static void main(String args[])
{
double one = 99.57;
double two = 3217;
System.out.println(one);
System.out.println(two);
}
}
Characters store letters.
char let = ‘A’;
char is a 16-bit unsigned integer data type.
We use single quotes for character literals.
We use double quotes for String literals… more
than 1 character.
char is a 16-bit unsigned int data type.
For example, here is a 16 bit pattern:
000000000110011
char let = 65;
ASCII VALUES YOU SHOULD KNOW!!!
‘A’ – 65
‘a’ – 97
‘0’ - 48
char alpha = 'A';
char ascii = 65;
char sum = 'B' + 1;
OUTPUT
A
A
67
C
System.out.println(alpha);
System.out.println(ascii);
System.out.println('B'+1);
//’B’ gets converted to its ASCII value
//66 and then 1 is added to it.
System.out.println(sum);
//since sum holds 67 and it is a char, we
//get C.
Type the following program in Dr. Java exactly as it is written. Compile the code and run the program. Are
the results what you expected?
public class Char
{
public static void main(String args[])
{
char alpha = 'A';
char ascii = 65;
char sum = 'B' + 1;
System.out.println(alpha);
System.out.println(ascii);
System.out.println('B'+1); //char is an integer type
System.out.println(sum);
}
}
The boolean data type can store true
or false only.
boolean heads = true;
boolean tails= false;
Type the following program into Dr. Java exactly as it is written. Compile the code and run the
program. Are the results what you expected?
public class BooleanTest
{
public static void main(String args[])
{
boolean stop = true;
boolean go = false;
System.out.println( stop );
stop = go;
System.out.println( go );
System.out.println( stop );
}
}
In JAVA, you have 8 primitive data types
that take up very little memory.
Everything else in Java in an Object.
Strings are objects.
String temp = "abc";
receiver = 57;
receiver is assigned( = ) the value 57.
In an assignment statement, the receiver
is always on the left of the assignment
symbol ( = ).
Assignment statements examples :
total = 10;
amount = 100.34;
You can initialize more than one variable in
one statement if they have the same type.
Just separate them using a comma.
int number = 75, it=99;
float taxrate = 7.75;
char letter = ‘A’, newlet = ‘a’;
boolean isprime = false;
String sone = "abc";
Java is a strong typed language. As a result,
you must be very careful to look at data
types when assigning values.
int one=90;
char letter= ‘A’;
char let= 65;
one=letter;
letter=let;
one=let;
int one = 90;
double dec = 234.5;
char letter = 'A';
System.out.println( one );
one = letter; //char to int
System.out.println( one );
one = 'A';
//char to int
System.out.println( one );
System.out.println( dec );
dec = one;
//int to double
System.out.println( dec );
System.out.println (one);
one = dec;
//double to int… Illegal
System.out.println (one);
OUTPUT
90
65
65
234.5
65.0
65
Error
Type the following program into Dr. Java. Compile the code
and run the program. Are the results what you expected?
//strong typed language example
public class MixingData
{
public static void main(String args[])
{
int one = 95;
double dec = 12.4;
char letter = ‘B';
System.out.println( one );
one = letter;
System.out.println( one );
//char to int
one = 'A'; //char to int
System.out.println( one );
System.out.println( dec );
dec = one;
System.out.println( dec );
//int to double
System.out.println( letter );
//letter = dec;
//double to int - not legal
//System.out.println( letter );
}
}