黑马程序员——关键字,常量,变量,运算符
来源:互联网 发布:autop 线切割编程系统 编辑:程序博客网 时间:2024/05/21 14:48
-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
一.关键字
1.定义
被Java语言赋予了特殊含义的单词
2.特点
关键字中所有字母都为小写
一.标识符
1. 定义
在程序中自定义的一些名称。
由26个英文字母大小写,数字0-9,符号_$组成。
2.合法标识符规则:
1. 数字不可以开头。
2. 不可以使用关键字
3.书写规范
包名:由多个单词组成时,所有单词都要小写。
类,接口名:多个单词首字母大写。
变量,函数名:第一个单词首字母小写,第二个单词开始首字母大写。
常量名:所有字母大写,单词之间有那个下划线”_”隔开。
二. 注释
1. 定义
用于注解说明程序的文字。
2.作用
提高了代码的阅读性。
3.注释格式:
1. 单行注释://注释文字
2. 多行注释:/*注释文字*/
3. 文档注释:/**文档注释*/
l 对于虚拟机单行和多行注释,不会被虚拟机执行
l 文档注释为java特有注释,注释内容可以被jdk提供的工具javadoc所解析,生成一套万页文件形式的说明文档(例如Java的api文档)。
三.常量
1定义
java中固定不变的数据。
2.Java中常量的分类:
a.整数常量。所有整数
b.小数常量。所有小数
c.布尔型常量。较为特有,只有两个数值。true false。
d.字符常量。将一个数字字母或者符号用单引号( ' ' )标识。(注意单引号括号内只能写一个字符)
e.字符串常量。将一个或者多个字符用双引号标识。
f.null常量。只有一个数值就是:null.
3.对于整数:java有四种表现形式。
二进制:0,1 满2进1。
十进制:0-9,满10进1。
八进制:0-7,满8进1.用0开头表示。
十六进制:0-9,A-F,满16进1.用0x开头表示。
五.进制转换
1. 十进制转二进制
十进制7转二进制:结果111,(从下往上读),其实就是反复除2,取余数。
反之二进制转十进制:20 * 1+21* 1+22* 1=7。
2. 二进制转八进制
3.二进制转十六进制
4.负数的二进制:对整数取反加一。
六.变量
1.变量的概念
• 内存中的一个存储区域
• 该区域有自己的名称(变量名)和类型(数据类型)
• 该区域的数据可以在同一类型范围内不断变化
•数据类型变量名=初始化值
2.数据类型
Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间。
3.数值型取值范围
byte(8个二进制位,-27——27-1 \ -128~127;1个字节)
short(16个二进制位,-215——215-1 \ -32768~32767;2个字节)
int (32个二进制位,231;4个字节) long(8个字节)
float(单精度,4字节,有效位数6~7) double(双精度,8字节有效位数15)
char(0——6535; 2) boolean (f alse(默认)和 true ,1)
精度从高到低: double float long int short(char) byte
float x=3.25F; 或者 float x=3.25f /需要加后缀f或F,小数默认为double类型
4.自动类型提升
当低类型数据与高类型数据进行计算时,系统会自动将表达式中的低类型数据提升到高类型。
byte b = 3;
int x = 4;
x = x + b;//b会自动提升为int类型进行运算。
5.强制类型转换:
byte b = 3;
b = b + 4;//报错
b = (byte)(b+4);//强制类型转换,强制将b+4的结果转换为byte类型,再赋值给b。
byte b1=3;
byte b2=4;
byte b;
b=b1+b2; //编译错误
b1和b2是“变量”意味着这两值不确定、可能随时变化,编译器无法检查,也无法确定是否在byte字节范围之内,他检查不了就会报错(可能丢失精度),如果是“常量”编译器就能够判断了。
b=3+4;//可通过编译
编译器在编译时(byte类型取值是有限的)他在判断右边的数值的时候发现是int类型(是“常量”),但他会判断是不是在byte字节范围之内,如果在的话,会给右边的int类型做默认的强转,他把最后的一个字节(byte八个二进制)赋值到了b这个变量当中
七.运算符
一.算数运算符
1. 取模
% 两数相除取余数
规律:左边<右边,结果是左边;
左边=右边,结果是 0;
右边是 1,结果是 0。
若出现负数,只看左边,结果的正负与左边一样。
2. 自增和自减
a++; àa=a+1;
++a;àa=a+1;
自增自减在赋值运算的表现:
a=1;
b=++a;//结果b=2,自增运算在先,赋值运算在后。
b=a++;//结果为b=1,赋值运算在先,自增运算在后。
二. 赋值运算符
符号:= , +=, -=, *=, /=, %=
short s = 3;
s=s+2;//编译不通过,因为s+2的时候s会提升为int类型,然后再赋给short类型的s时会报错:损失精度。
s+=2;//可以通过编译,因为它内部会有一个自动转换过程。
三.比较运算符
注意:比较运算符的结果都是boolean型,也就是要么是true,要么是false。
== 与 === 区别:
== 会自动类型转换后比较,=== 必须是同样的类型,同样的值进行比较。
四.逻辑运算符
1. “&”和“&&”的区别:
单&时,左边无论真假,右边都进行运算;
双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
2.“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。
3.异或( ^ )与或( | )的不同之处是:
当左右都为true时,结果为false,两边相同结果是fals,两边不一样结果是true。
五.位运算符1.位运算是直接对二进制进行运算。
3<<2 è 3*22 3<<3 è3*23
可知移 n 位就是对其乘以或者除以 2 的 n 次幂。
2.>>运算,最高位补什么由原有数据的最高位决定,最高位1补1,最高位0补0
3.>>>,不管最高位是什么,右移后最高位都补0。
注意:一个数异或同一个数两次,则得到的是同一个数。
六.三元运算符
格式(条件表达式)?表达式 1:表达式 2;
条件表达式最后的运算结果一定是布尔类型(false,true);
如果条件结果为 true,运算后的结果是表达式 1;如果条件结果为 false,运算后的结果是表达式 2。 三元运算必须要有结果。-----------android培训、java培训、java学习型技术博客、期待与您交流!------------
- 黑马程序员——关键字,常量,变量,运算符
- 黑马程序员---关键字、常量、变量、运算符
- 黑马程序员---关键字,常量,变量,运算符
- 黑马程序员————Java基础(关键字、常量、变量、运算符)
- 黑马程序员——Java基础知识——关键字、标识符、常量、变量、运算符、转义字符
- 黑马程序员——Java基础——关键字、常量、变量、运算符
- 黑马程序员——C基础——关键字、常量、变量、运算符
- 黑马程序员——Java基础语法(一)---关键字、常量、变量、运算符
- 黑马程序员——java基础语法之关键字、常量、变量、运算符
- 黑马程序员——Java基础语法(一)---关键字、常量、变量、运算符
- 黑马程序员——java编程基础(一)注释、关键字、变量、常量、运算符
- 黑马程序员——Java基础语法(一)---关键字、常量、变量、运算符
- 黑马程序员——Java基本语法(一):关键字、标识符、常量与变量、运算符
- 黑马程序员——Java基础语法(一)---关键字、常量、变量、运算符
- 黑马程序员——java基础---关键字、常量、变量、运算符
- 黑马程序员——Java基础语法(一)---关键字、常量、变量、运算符
- 黑马程序员——Java基础语法---关键字、常量、变量、运算符
- 黑马程序员——java基础语法(一)---关键字、标识符、注释、常量、变量、运算符
- dir()和vars()区别
- Palindrome Partitioning II
- UVA - 11402 Ahoy, Pirates! (线段树)
- live555 基本命令处理流程
- JFreeChart 使用介绍
- 黑马程序员——关键字,常量,变量,运算符
- Fuzzing测试中对于SPIKE框架的应用(一)
- 查找一个文件是否存在 01
- 图论基础知识
- Java 8 简明教程
- 黑马程序员——面向对象
- 正在读取软件包列表... 有错误! E: Encountered a section with no Package: header
- ZOJ1789
- CV_Assert函数 C++ assert()函数