java学习笔记之java语言基础(一),
java学习笔记之java语言基础(一),
Java语言基础组成
- 关键字
- 标识符
- 注释
- 常量与变量
- 常量
- 变量
- 运算符
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
关键字
被赋予特殊Java含义的单词;
关键字中所有字母都为小写。
标识符
用于标识某些东西的符号。
类名首字母大写是一种规范!
必须由26个英文字母大小写、数字0~9、符号:_和$组成
数字不能开头
不能使用关键字
不能有空格
注释
单行注释://XXXXXX
多行注释:/* XXXXXX */
这两种注释很多语言通用。
还有一种注释是java特有的:
/ * *
文档注释
*/
文档注释可以通过javadoc提取。
注释内可以嵌套注释:
单行注释中可以有单行/多行注释
多行注释中可以有单行注释,但不能有多行注释。
注释还可以进行程序的调试
注释不占字节数
常量与变量
常量
不能被改变的数据
分类:
整数常量:
- 二进制整数;
- 八进制整数;
- 十进制整数;
- 十六进制整数
小数常量
布尔常量:
- 只有两个值(true、false)是关键字;
字符常量:
- 数字0~9、字母、符号 用(’’)单引号标识;
字符串常量:
- 用("")双引号标识,可放多个字符;
null常量:
- 只有一个数值null。
变量
变化的数据。内存中的一个存储区域,有自己的名称(变量名)和类型(数据类型);
该区域的数据可以在同一类型范围内不断变化;用来存放同一类型的常量,并可以重复使用。
定义变量的格式:
数据类型 变量名 = 初始化值;
数据类型:
例:
long s=1234567890123l;
float f=2.3f;
char ch='1';
若编译错误,显示出现非法字符,则说明使用了中文字符。
自动类型提升:
运算两端必须要同类型才能运算。
两种数值同时运算时,占用内存较小的会自动提升成较大的。
强制类型转换:
例如:
byte b=3;
b=(byte)(b+4);
若出现负数,则说明字节最高位为1,进行了二进制转换(先减1,再取反)
类型运算细节
有这样一个代码:
byte b=4;
b=3+7;
System.out.println(b);
运行得:10
但如果
byte b=4;
byte b1=3;
byte b2=7;
b=b1+b2;
System.out.println(b);
运行结果是?
出错了!错误原因是:可能损失精度
因为b1,b2是变量,会变化,不能保证b1和b2之和不超出限度造成损失精度。
运算符
算术运算符
+,-,*,/,%,+(连接符)
int x=6370;
x=x/1000*1000;
System.out.println(x);
运行结果是6000,而不是6370。因为java是强类型语言,x/1000结果是6而不是6.37.
+(连接符):
任何数据和字符串用"+"连接,结果都是字符串
例如:
//想分别打印a和b
int a=4,b=5;
System.out.println(a+","+b);
运行结果是:4,5
//想打印a=4,b=5
int a=4,b=5;
System.out.println("a="+a+",b="+b);
运行结果是:a=4,b=5
自增(++)、自减(–)
int a=3,b;
b=a++;
System.out.println("a="+a+",b="+b);
运行结果:a=4,b=3
相当于:
temp=a;
a=a+1;
b=temp;
而
int a=3,b;
b=++a;
System.out.println("a="+a+",b="+b);
运行结果:a=4,b=4
相当于:
a=a+1;
b=a;
赋值运算符
=、+=、-=、*=、/=、%=
赋值运算所具备的特点:做自动类型转换。
例:
short s=3;
s+=4;
和
short s=3;
s=s+4;
有什么区别?
第一段代码的运行结果是7;而第二个却是无法运行的。
因为第一个进行一次运算,做了自动类型转换;而第二个做了两次运算,且右边的值不确定,不做自动类型转换,可能损失精度。
比较运算符
==、!=、>、<、>=、<=、instanceof
比较运算符的运算结果必须是true/false
逻辑运算符
&(与),|(或),^(异或),!(非),&&(与,短路),||(或,短路)
用于连接两个boolean类型的表达式
&符号的运算特点:一假必假
|符号的运算特点:一真必真
^符号的运算特点:不同为真,相同为假
!符号的运算特点:与原来结果相反
例如:
!true=false
!!true=true
&&和&运算的结果是一样的。但是运算过程有点小区别。
&:无论左边的运算结果是什么,右边都参与运算。
&&:当左边为false时,右边不参与运算的。
||和|运算的结果是一样的。但是运算过程有点小区别。
|:无论左边的运算结果是什么,右边都参与运算。
||:当左边为true时,右边不参与运算的。
位运算符
二进制位(比特位)运算的符号
&:
6&3=2
110&011=010=2
|:
6|3=7
110|011=111=7
^:
6^3=5
110^011=101=5
一个数异或同一个数两次,结果还是这个数。
可用于加密、
~:(取反)
~6=-7
<<(左移):
3<<2=12
a<<b=a*2b
>>(右移):
6>>1=3
a>>b=a/2b
数据进行右移时,高位出现的空位,用最高位的数补齐
>>>(无符号右移):
数据进行右移时,高位出现的空位,无论正负,都用0补
相关文章
- 暂无相关文章
用户点评