Java快速入门(C/C++程序员)
2017-05-26 本文已影响0人
w黄杨w
概览
Java是一种编写跨平台、面向对象的程序设计语言
标识符
- 由字母、数字、下划线和美元符号($)组成,且第一个字符不能为数字
- 字母(char)为Unicode标准字符集,但不推荐使用非英文字符(国际化)
- 不能为Java的关键字和保留字
- 区分大小写
基本数据类型
- 整数类型(byte、short、int、long)
- 分别为1字节、2字节、4字节、8字节
- 全部为是有符号
- 浮点类型(float、double)
- 字符型(char)
- 2字节
- 无符号
- unicode
- 可以和整数类型混用
- 布尔型(boolean)
- 区别于数值类型,不能混用
数据类型
Java数据类型可分为基本数据类型和引用数据类型。
- 基本数据类型和C++类似,但有所区别
- 除了四类八种基本数据类型外,所有的类型都是引用数据类型(包括数组、类、接口、字符串等,即对象类型)。
- 基本数据类型变量本身就是一块内存空间,而引用数据类型类似于指针来间接引用其他内存空间。
变量和常量
基本和C++一致
- 变量必须先定义再使用;
- Java用{}表示复合语句,复合语句可构成变量的作用域;
- 对于嵌套的复合语句,不能在内层定义和外层相同的局部变量,且它们使用相同的栈空间;
- 可以定义和全局变量(类属性)相同的局部变量(方法变量),局部变量将屏蔽全局变量;
- 常量定义用final(C++用const或者#define),通常编码规范要求使用大写标识符;
运算符
基本和C++一致,增加了短路逻辑运算符(&和|)和无符号按位右移(>>>),没有逗号运算符。
- 赋值运算符
- 算术运算符(+,-,*,/,%)
- 自增和自减运算符(++,—-)
- 比较运算符(关系运算符>,>=,<,<=,==,!=)
- 对引用对象进行比较时,是比较对象的地址(若要比较值,需要重载/调用equals方法)
- 逻辑运算符(!,&&,||,&,|)
- &&和||为短路运算符
- &和|为非短路运算符
- 位运算符
- ~,&,|,^,<<,>>,>>>
- >>>为无符号右移(Java的基本数值型都是有符号的)
- 三元运算符(即条件运算符?:)
运算优先级
与c++一致,“初单算移关,位逻条赋(逗)”,注意Java没有逗号运算符
代码注释
- 单行注释//
- 多行注释/* */
- 文档注释/** */
流程控制
Java的控制流程语法基本和C++一致。它使用复合语句可以为变量定义一个有效区域。通过使用if与switch语句,可以基于布尔类型的测试,将一个程序分为不同的部分。通过while、do...while循环语句和for循环语句,可以让程序的一部分重复地执行,直到满足某个循环的条件。
- 复合语句为{}内的单个或多个语句
- for有两种用法
- for(;;)和C++一致
- for(变量类型 x: 要遍历的容器类型)
- 使用break可以提前终止循环
- 使用continue跳过当前循环后续操作进入下一循环
- break和continue可以使用标签来跳到外层循环
flag: for (;;) {
for (;;) {
break flag; // or continue flag;
}
}
- switch的case必须是整数常量或者字符常量
- switch的case里没有break则将fall through
- return提前结束方法
数组
数组是具有相同类型的一种数据的集合,按照维度可分为一维数组、二维数组和多维数组。可参考《Java数组总结》
字符串
字符串即String类,是Java中一个比较特俗的类,它不是Java的基本数据类型,却可以像基本数据类型一样使用。可参考《Java字符串总结》