1.java语言的组成
2.1关键字
2.2标识符
1) 定义:就是我们在程序中自定义的一些名称
2) 规则:①由 0-9数字a—z 26个字母的大小写 $ _ 组成
②数字不能开头
③不可以使用关键字
④java 严格区分大小写
3) 规范:
2.3注释
2.4常量与变量
1. 常量:在程序中固定不变的数据
2. 分类:整数小数 布尔型常量 字符型 字符串型 NULL
单引号里面只能存放单个字符
Null常量只有一个数值就是NULL
整数:十进制八进制 十六进制(ox开头) 进制越大表现形式越短
进制之间的转换:
十进制与二进制之间的转换:6/2=3…..0
3/2=1…..1
1/2=0…..1
所以6=110(二进制)
反之:6=0*2^0+1*2^1+1*2^2
0 1 1 1 1 0 1
64 32 16 8 4 2 1 所以0111101=32+16+8+4+1=61
其他进制的转换(我学过):先把十进制转换成二进制然后再转换成十六进制(四个bit为一组:因为四个比特最大为15)
八进制(三个比特为一组,最大为7)
错误1:D:\myJavaCode\day02>javacVarDemo.java
VarDemo.java:6: 错误:找不到符号
System.out.println(Ox3c);
^
符号: 变量 Ox3c
位置:类 VarDemo
1 个错误
错误原因:十六进制表示是0x而不是ox
负数二进制的转换:
6=110=0000-0000 0000-0000 0000-0000 0000-0110
-6=-110=1111-1111 1111-1111 1111-1111 1111-1001+1
2.变量:把不确定的数据进行存储,也就是在内存中开辟一个空间
整数类型:
Byte: 8个二进制位 -128—127 [一两的碗]
Short:16个二进制位 -2^15---+2^15-1 [二两的碗]
Int:32个二进制位 -2^31---+2^31-1(最常用)[四两的碗]
Long:天文数字[八两的碗]
默认类型是int
注意:
Byte b=3;
b=b+2;
System.out.println(b);
第一步:b为byte类型值为3
第二步:b值加上2(2为int型)后,结果为int型,再转换成byte型损失精度
因该写成:b=(byte )(b+2);[强制转换]
浮点类型:
Float:单精度 32位
Double:双精度 64位(默认类型)
内存中表示:
注意:小数默认情况下是double以下语句是错误的:
Float b1=2.3;
因为2.3是double类型 b1是float类型,小碗里面装大饭会损失精度
正确写法:float b1=2.3f;
字符型
char a=’4’;字符型在内存中占两个八位即两个字节,空格也是字符
布尔类型
只有两种情况:true false
3运算符
注意 1%5=1
-1%5=-1
1%-5=1 结果的符号只与被模数有关,剩下的看绝对值
++与—
int a=3 ,b;
b=a++;(b=3 a=4)
b=++a;(b=4 a=4)
+:字符串相加 System.out.println("5+5="+5+5); 结果为5+5=55
步骤:第一步:”5+5=”+5=”5+5=5”
第二步: “5+5=5”+5=”5+5=55”
System.out.print("helloworld");
System.out.println("hellojava");
输出 hello worldhellojava println ln=line
转意字符
通过\来改变后面字母或者符号的含义
例子:
\n 换行
\b 退格
\r 按下回车键
\t 制表符相当于tab键
赋值运算符
思考题答案:
S=s+2 是一个两步运算 最后得出一个int型数值,再赋值给s ,回丢失精度
S +=2 是一个一步运算,s会变成5 +=是一个运算符不是两个
Java 语言中可以同时给变量赋值如下
Int a,b,c;
A=b=c=5;
逻辑运算符
& 和&&的区别(|与||的区别)
Int a=2;
a>7&a<9
a>7&&a<9 后面不用运算,比上一个更有效率
位运算符
〉〉:最高位是什么补什么
〉〉〉:只能补0
一个数异或同一个数两次得它本身
练习
互换两个变量的值
法1:引入第三个变量
Int a=3, b=8;
Int temp;
Temp=a;
A=b;
B=temp;
法2:不引入第三方变量
a=a+b;(此方法在此有局限性,可能会超出范围)
b=a-b;
a=a-b;
法3:(此方法最有效率)
a=a^b;
b=a^b;
a=a^b;
取最低四位的运算(与运算)[注,这和计算机网络中子网掩码很相似]
第二步
十六进制表现形式获取示意图
三元运算符
程序流程控制
1. 判断结构
三元运算符与if…else…的区别
if….else…的简写格式 变量=(条件表达式)?表达式1:表达式2
三目运算符好处:三元运算符可以简化代码
弊端:因为是运算符所以运算万必须有一个结果
2. 选择结构
D举例
Switch语句要比if语句更有效率
3. 循环结构
while与do…while的区别
while 先判断条件,再执行循环体
do…while 先执行循环体,再判断条件,如果条件满足再执行循环体
for语句
while和for的区别
如果变量仅作为循环增量存在 用for语句(内存会相对优化一点)
While语句会改变变量,还会占内存
无限循环的形式
for( ; ; ){}
while(true){}
其他流程控制语句
选择跳出哪个循环
------- android培训、 java培训、期待与您交流! ----------