elaborate:详细说明

Data Types
Java categorizes data into different types, and only certain operations
can be performed on a particular type of data.

Data type: A set of values together with a set of operations on those values.
Primitive Data Types
 There are three categories of primitive data types:

• Integral, which is a data type that deals with integers, or numbers
without a decimal part (and characters)
• Floating-point, which is a data type that deals with decimal numbers
• Boolean, which is a data type that deals with logical values
Integral data types are further classified into five categories: char, byte, short, int, and long.

Which data type you use depends on how big a number your program needs to deal with.

In the early days of programming, computers and main memory were very expensive.
Only a small amount of memory was available to execute programs and manipulate data.
As a result, programmers had to optimize the use of memory. 
Table 2-2 gives the range of possible values associated with the five integral data types and
the size of memory allocated to manipulate these values.

java中字符编码采用的是Unicode,所以是16bit而不是c语言里面的8bit

boolean DATA TYPE
The data type boolean has only two values: true and false. The memory allocated for the boolean data type is 1 bit.

FLOATING-POINT DATA TYPES:float or double, the memory allocated for them respectively are 4 byte and 8 byte.
In java, by default, float-point refers to double.

关于负数的取余:http://ceeji.net/blog/mod-in-real/

总结

我们由此可以总结出下面两个结论:

  1. 对于任何同号的两个整数,其取余结果没有争议,所有语言的运算原则都是使商尽可能小
  2. 对于异号的两个整数,C++/Java语言的原则是使商尽可能大,很多新型语言和网页计算器的原则是使商尽可能小。

Character arithmetic: Java allows you to perform arithmetic operations on char data.

class String
A string is a sequence of zero or more characters. Strings in Java are enclosed in double
quotation marks . To process strings effectively, Java provides the

class String. The class String contains various operations to manipulate a string. Technically speaking, the class String is not a primitive type.

A string that contains no characters is called a null or empty string. 
Every character in a string has a specific position in the string. The position of the first
character is 0, the position of the second character is 1, and so on. The length of a string
is the number of characters in it.

Strings and the Operator +
One of the most common operations performed on strings is the concatenation operation,
which allows a string to be appended at the end of another string. The operator +
can be used to concatenate (or join) two strings as well as a string and a numeric value or a
character.

The complete description of this class can be found at the Web site http://java.sun.com/javase/7/docs/api/.

In Java, you can use a named constant to instruct a program to mark those memory locations in which data is constant throughout program execution. Named constant: A memory location whose content is not allowed to change during program execution.

The syntax to declare a named constant is:              static final dataType IDENTIFIER = value;             //注意static是可选的(optional)

The reserved word final specifies that the value stored in the identifier is fixed and cannot be changed. 

 Notice that the identifier for a named constant is in uppercase letters. This is because Java programmers

typically use uppercase letters for a named constant. (If the name of a named constant is a
combination of more than one word, called a run-together-word, then the words are
separated using an underscore; see the next example.)

To put data into variables from the standard input device, Java provides the class Scanner. Using this class, we first create an input stream object and associate it with the standard input device. The following statement accomplishes this:

static Scanner console = new Scanner(System.in);


 The object console reads the next input as follows:
a. If the next input token can be interpreted as an integer, then the expression:
console.nextInt()
retrieves that integer; that is, the value of this expression is that integer.
b. If the next input token can be interpreted as a floating-point number, then
the expression:
console.nextDouble()
retrieves that floating-point number; that is, the value of this expression
is that floating-point number. 
c. The expression:
console.next()
retrieves the next input token as a string; that is, the value of this
expression is the next input string. 

d. The expression:
console.nextLine()
retrieves the next input as a string until the end of the line; that is, the
value of this expression is the next input line. (Note that this expression
also reads the newline character, but the newline character is not stored
as part of the string.)
While scanning for the next input, the expressions console.nextInt(),
console.nextDouble(), and console.next() skip whitespace characters. Whitespace
characters are blanks and certain nonprintable characters, such as newline and tab.

System.in is called a standard input stream object and is designed to input data from the
standard input device. However, the object System.in extracts data in the form of
bytes from the input stream. Therefore, using System.in, we first create a Scanner
object, such as console, as shown previously, so that the data can be extracted in a
desired form.

Reading a Single Character
Suppose the next input is a single printable character, say, A. Further suppose that ch is a
char variable. To input A into ch, you can use the following statement:
ch = console.next().charAt(0);
where console is as declared previously.

Increment and Decrement Operators

Output

The syntax to use the object System.out and the methods print and println is:
System.out.print(expression);
System.out.println(expression);
System.out.println();

Packages, Classes, Methods, and the import Statement

Only a small number of operations, such as arithmetic and assignment operations, are explicitly defined in Java. Many of the methods and identifiers needed to run a Java program are provided as a collection of libraries, called packages. A package is a collection of related classes. Moreover, every package has a name. 

In Java, class is a broadly used term. The term class is used to create Java programs, either application or applet; it is used to group a set of related operations; and it is used to allow users to create their own data types.

 This and other mathematical methods are contained in the class Math. The name of the package containing the class Math is java.lang.

The package java.util contains the class Scanner. This class contains the methods
nextInt, nextDouble, next, and nextLine for inputting data into a program. 
To see the complete definitions of the (predefined) Java classes, such as String, Math,
and Scanner, as well as the class hierarchy, you can visit the Web site http://
java.sun.com/javase/7/docs/api/.

In skeleton form, a Java application program looks like the following:
import statements if any
public class ClassName
{
named constants and/or stream objects declarations
public static void main(String[] args)
{
variable declaration
statements
}
}
Notice that the heading of the method main contains the reserved word static. The
statements to declare the named constants and the input stream objects are placed outside
the definition of the method main. Therefore, to use these named constants and stream
objects in the method main, Java requires that you declare the named constants and the
input stream objects with the reserved word static.

Chapter 2 Basic Elements of JAVA的更多相关文章

  1. [Basic] The most basic things about java

    [Basic] The most basic things about java // */ // ]]>   [Basic] The most basic things about java ...

  2. HTTP基本认证(Basic Authentication)的JAVA实例代码

    大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证. 下面来看看一看这个认证的工作过程: 第一步: 客户端发送 ...

  3. JVM Specification 9th Edition (4) Chapter 3. Compiling for the Java Virtual Machine

    Chapter 3. Compiling for the Java Virtual Machine 内容列表 3.1. Format of Examples 3.2. Use of Constants ...

  4. HTTP基本认证(Basic Authentication)的JAVA示例

    大家在登录网站的时候,大部分时候是通过一个表单提交登录信息.但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证.下面来看看一看这个认证的工作过程:第一步:  客户端发送ht ...

  5. HTTP基本认证(Basic Authentication)的JAVA演示样例

    大家在登录站点的时候.大部分时候是通过一个表单提交登录信息.可是有时候浏览器会弹出一个登录验证的对话框.例如以下图,这就是使用HTTP基本认证.以下来看看一看这个认证的工作过程:第一步:  clien ...

  6. [C++ Basic]C++与Java的主要区别

    1.编译运行 java是解释性语言,java程序在运行时类加载器从类路经中加载相关的类,然后java虚拟机读取该类文件的字节,执行相应操作.而C++编译的 时候将程序编译成本地机器码.一般来说java ...

  7. LeetCode算法题-Minimum Moves to Equal Array Elements(Java实现)

    这是悦乐书的第233次更新,第246篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第100题(顺位题号是453).给定大小为n的非空整数数组,找到使所有数组元素相等所需的 ...

  8. LeetCode算法题-Remove Linked List Elements(Java实现)

    这是悦乐书的第189次更新,第191篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第48题(顺位题号是203).移除单链表中节点值为val的节点.例如: 输入:1-> ...

  9. Chapter 06—Basic graphs

    三. 柱状图(Histogram) 1. hist():画柱状图 ·breaks(可选项):控制柱状图的小柱子的条数: ·freq=FALSE:基于概率(probability),而非频率(frequ ...

随机推荐

  1. jQuery使用(十二):工具方法之type()之类型判断

    type()的使用 类型判断方法之is...() 实现原理可以参考我的另一篇js源码剖析博客: 类型和原生函数及类型转换(二:终结js类型判断) $.type( undefined ) === &qu ...

  2. PYTHON语言之常用内置函数

    一 写在开头本文列举了一些常用的python内置函数.完整详细的python内置函数列表请参见python文档的Built-in Functions章节. 二 python常用内置函数请注意,有关内置 ...

  3. 第四节:框架前期准备篇之进程外Session的两种配置方式

    一. 基本介绍 1. 背景:Asp.Net默认的Session机制是进程内,存储在服务器端内存中,有这么几个缺点: ①:既然存在内存中,空间有限,不能存储大数据量信息,数据量多的话Session会被挤 ...

  4. C# mvc 前端调用 redis 缓存的信息

    新手 这几天网上学习下redis ,自己总结下过程,怕之后忘记了,基本会用最简单的,有的还是不懂,先记下来,自己摸索的. 没有安装redis的先安装,教程:http://www.cnblogs.com ...

  5. Mysql的跨服务器 关联查询--Federated引擎

    1.确认开启Federated引擎     查询FEDERATED功能是否开启: show ENGINES;       2.如果状态为NO则需修改my.ini文件,增加一行federated配置: ...

  6. jmeter接口入门操作手册

    基础操作手册:Windows Mr丶菜鸟 1.下载jmeter  ,jmeter是一款基于java的开源工具,可以测试接口和性能,需要jdk环境,下载jmeter地址:https://jmeter.a ...

  7. 关于redis服务无法启动问题

    打开cmd终端找到redis安装路径下 输入redis-server redis.windows.conf报错信息如下 之后重新输入redis-cli.exe 运行结果 然后输入 127.0.0.1: ...

  8. PHP 【三】

    字符串变量 $txt = "Hello world!"; 创建字符串后,就可以对它操作,可以在函数中使用,或者把它存储在变量中 并置运算符 [把两个字符串值连接起来] <?p ...

  9. Lnmp下pureftpd新建FTP账户权限不足解决方法

    解决办法:  登录服务器.执行以下命令 chattr -i /home/wwwroot/default/.user.ini chown www:www -R /home/wwwroot/你的lnmp安 ...

  10. PHP -- 七牛云 在线视频 获取某一帧作为封面图

    ### 最近碰到视频处理,需要视频封面? 但用的是七牛云存储视频,索性搜了一下,怎么获取视频的某一帧作为视频的封面图... 发现了七牛官网又自身的接口 ### https://developer.qi ...