1 / 19

String Escape Sequences

String Escape Sequences. What if we wanted to print a double quote character? The following line would confuse the compiler because it would interpret the second quote as the end of the string System.out.println ("I said "Hello" to you.");

abrial
Download Presentation

String Escape Sequences

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. String Escape Sequences • What if we wanted to print a double quote character? • The following line would confuse the compiler because it would interpret the second quote as the end of the string System.out.println ("I said "Hello" to you."); • An escape sequence is a series of characters that represents a special character • An escape sequence begins with a backslash character (\), which indicates that the character(s) that follow should be treated in a special way System.out.println ("I said \"Hello\" to you.");

  2. Escape Sequence \b \t \n \r \" \' \\ Meaning backspace tab newline carriage return double quote single quote backslash Escape Sequences • Some Java escape sequences: • See Roses.java

  3. More on String Objects • Because strings are so common, we don't have to use the new operator to create a String object title = "Java Software"; • which is a shorcut for: title = new String ("Java Software“); • This is special syntax that only works for strings title “Java Software"

  4. Yet More on String Objects • Every string literal, delimited by double quotation marks, also represents an implicitString object in Java • A common service we want from string objects is to merge two strings, i.e., append one string to the end of another string • One possibility to join “hello ” and “world” could be: • “hello ”.join(“world”); • To have a more natural expression, Java introduces the string concatenation operator (+): • it is used to append one string to the end of another • for example “hello “ + “world!” generates “hello world!” “hello”+”world!” is a shorthand of “hello ”.+(“world”) See Facts.java

  5. Primitive Data Types • Strings are just one type of common objects we encounter and are treated specially by Java • There are other basic (primitive) objects, such as integers etc • Java predefines classes for such basic types • for example, one predefined class is Integer: To create an Integer (object):Integer wagePerHour = new Integer(10); System.out.println( wagePerHour );

  6. Primitive Data Types • Although in pure object-oriented languages (such as Smalltalk and Ruby), we can consider everything as objects and defines everything as class, for efficiency, Java treats common objects such as numbers, characters, and logical values specially, and introduces them into the language as primitive data types • Note: this division between primitive types and objects is disliked by some programmers familiar with languages such as Smalltalk and Ruby where everything is an object

  7. Primitive Data Types • There are exactly eight primitive data types in Java • four of them represent integers: • byte (class Byte), short (class Short), int (class Integer), long (class Long) • two of them represent floating point numbers • float (class Float), double (class Double) • one of them represents characters: • char (class Character) • and one of them represents boolean (logical) values: • boolean (class Boolean)

  8. Numeric Primitive Data Types • byte, short, int, long, float, and double are numeric data types • The difference among the various numeric primitive types is their storage sizes and representations, and therefore the ranges and precision of the values they can store • To understand this, we need to have a rough understanding of computer memory storage

  9. Each memory cell has a set number of bits (usually 8 bits, or one byte); a bit can represent 2 values) 10011010 A computer can use more cells to store data, e.g., 2 bytes Memory Primary storage area for programs and data Also called RAM RAM is divided into many cells; each cell can be identified by a numeric address Main Memory 9278 9279 9280 9281 9282 9283 9284 9285 9286 - how many values can a byte represent? - how many values can 2 bytes represent?

  10. Type byte short int long float double Storage 8 bits 16 bits 32 bits 64 bits 32 bits 64 bits Min Value -128 -32,768 -2,147,483,648 < -9 x 1018 +/- 3.4 x 1038 with 7 significant digits +/- 1.7 x 10308 with 15 significant digits Max Value 127 32,767 2,147,483,647 > 9 x 1018 Numeric Primitive Data • “Objects” of different numeric data types occupy different number of cells IEEE 754format

  11. Characters • A char is a single character from a character set • A character set is an ordered list of characters; each character is given a unique number • Character literals are represented in a program by delimiting with single quotes: 'a‘ 'X‘ '7' '$‘ ',' '\n'

  12. uppercase letters lowercase letters punctuation digits special symbols control characters A, B, C, … a, b, c, … period, semi-colon, … 0, 1, 2, … &, |, \, … carriage return, tab, ... Character Sets • The ASCII character set is quite popular. It includes: • Java uses the Unicode character set, a superset of ASCII • uses sixteen bits (2 bytes) per character, allowing for 65,536 unique characters • it is an international character set, containing symbols and characters from many languages • code chart can be found at: http://www.unicode.org/charts/

  13. Boolean • A boolean value represents logical value: true or false • The reserved words true and false are the only valid values for a boolean type • A boolean can also be used to represent any two states, such as a light bulb being on or off

  14. data type variable name int total; int count, temp, result; Multiple variables can be created in one declaration Variables: Revisited • We already know that a variable must be declared, specifying the variable's name and the type of information that will be held in it • As of now, think of a variable as a name for a location in memory cell (we will revisit the concept later)

  15. Variables • A variable can be given an initial value in the declaration int sum = 0; int base = 32, max = 149; String msg1 = new String( “Hello” ); String msg2 = “Hello” ; • When a variable is referenced in a program, its current value is used • See PianoKeys.java

  16. total = 55; Change the Value of a Variable: Assignment Statement • An assignment statement changes the value of a variable • The assignment operator is the = sign • The expression on the right is evaluated and the result is stored in the variable on the left • The value that was in total is overwritten • Remember: you can only assign a value to a variable that is consistent with the variable's declared type • See Geometry.java

  17. Constants • A “constant variable” is an identifier that is similar to a variable except that it holds one value for its entire existence • Why constants: • give names to otherwise unclear literal values • facilitate changes to the code • prevent inadvertent errors • In Java, we use the final modifier to declare a variable constant, and the convention is to use all capital words to name a constant final double PI = 3.14159265; • The compiler will issue an error if you try to assign value to a constant variable after its declaration

  18. Arithmetic Expressions • An expression is a combination of operators and operands • Arithmetic expressions (we will see logical expressions later) are essentially special methods applied to numerical data objects: compute numeric results and make use of the arithmetic operators: Addition + Subtraction - Multiplication * Division / Remainder %

  19. Division and Remainder • If both operands to the division operator (/) are integers, the result is an integer (the fractional part is discarded) 14 / 3 equals? 8 / 12 equals? • The remainder operator (%) returns the remainder after dividing the second operand into the first 14 % 3 equals? 8 % 12 equals?

More Related