ASCLL表
- 当输入人类语的时候,操纵系统就会去查询对应的码表, 将这些语言转换为对应的二进制,因为是美国人的语言 只有英文,所以ASCII中只有英文和一些标点,每个效文 字母和符号对应一个字节(8位)的二进制数字
- (0-9)对应(48-57),(A-Z)对应(65-90),(a-z)对应(97-122)
int和char类型数据转换
- char转换成int,字符型和数值型进行转换的时候都会直 询编码表,由于int4个字节,char2个字节,所以属于自动的 类型转换
- int转换成char,需要强制类型转换
- 如果char是汉字,转换成整数查询的就是Unicode编码表
- char类型的最大整数是65535,因为char设有负数
- char可以直接赋值为Unicode编码,格式为luxox,十六 进制
运算符
- 逻辑运算符:
语法格式:
boolean r = 布尔表达式1 逻辑运算符(&;|;!..) 布尔表达式2
1)逻辑运算符运算结果是布尔典型
2)布尔表达式:是指运算结果是布尔值的式子 - &与和(and) false&true false
只有&两边的表达式的值都是true 整体结果才是true,其他都是false
全真才真,一假就假 - | 或
只有| 两边的表达式的值都是false,整体结果才是false,其他都是true
全假才假,一真就真 - ! 非/取反
非错即对 - &&短路与
因为&是一错就错,所以当&&前已经是false时,那么就可以确定整体表达式的结果是false
后续的表达式就不再执行了 - ||短路或
与上类似
运算符 | 运算规则 | 范例 | 结果 |
---|---|---|---|
& | 与 | 1&0,0&0,1&1 | 0,0,1 |
I | 或 | 1I0.0I0,1I1 | 1,0,1 |
^ | 异或 | 10,00,1^1 | 1,0,0 |
- ^运算规律
10=1,00=0,任何数和0相异或得到的是这个数本身
01=1,11=0,任何数和1相异,或得到是这个数的相反数
一个数自己和自己异或得到的是0
三目/三元运算
- 数据类型 变量= 布尔表达式 ? 当前面结果是true是执行此处;当前面结果是false时执行此处;
- 数据类型 变量 = A ? B : C;
1.先执行A处的布尔运算,得到一个布尔值
2.当布尔值是true时,执行B处代码
3.当布尔值是false时,执行C处代码
4.整体结果的数据类型根据执行B处或者C处代码的结果方式
5.B处和C处的结果数据类型一致
分支语句-if语句
- 语法
- if(布尔表达式){
语句1;
语句2;
…
}
- if(布尔表达式){
- 执行流程:
1.先判断布尔表达式
2.如果结果是true,就执行if后的{ }内的语句,然后继续执行后续的
3.如果结果是false,就跳过if后的{ },而是执行后续的代码
双分支 - if…else…
if (布尔表达式){
当布尔表达式值是true,执行if后的语句:
且不执行else中的语句 布尔结果:true 执行if中语句 跳过else
}else{
当布尔表达式值是false是,不执行if后的
而是执行else后的语句,布尔结果是false 执行else语句,不执行if
if(布尔表达式2){
else if(布尔表达式2){
语句2;
}else if(布尔表达式3){
语句3;
}...{
语句n
}else{
语句n+1;
}
}
- 一旦有某个语句了,后续的
switch(值){
case 值1:
语句1;
break;
case 值2;
语句2;
break;
...
case 值n:
语句n;
}
执行流程:
1.switch后的值,与case后的值比较
2.如果相等,就执行改case下的语句
3.如果遇到break,跳出switch结构,执行后续
4.如果没有break,会造成case击穿
5.如果不相等,比对下一个case
6.----
7.如果没有一个case比对成,那么执行default中的语句
- switch后支持byte shart int char String enum (枚举)
- case后的值的数据类型要与switch的值数据类型一致,case值后是冒号。
循环4要素
1.循环初始值
2.循环控制条件
3.循环体
4.循环迭代
while循环
语法:
`while (布尔表达式){
循环体;
循环迭代;(++ / --)-->控制循环次数
}
执行流程:
1.先判断while后的表达式
2.如果是true,就行{}内的语句
3.执行完{}内语句,再次判断while后的表达式
4.当while后的结果是false就不再执行{}内的内容
5.继续执行后续
int i = 1;
while (i < 6 ){
System.out.println("你好");
i++;
}
package com.ligong.basic;
//算术运算符
public class CountOperator {
public static void main(String[]args){
//正号
System.out.println(+3);
//加法
System.out.println(1+3);
//字符串连接
String a="今天周五";
String b="今天放假";
System.out.println(a+b);
//负号
int k =3;
System.out.println(-k);
//减法
System.out.println(3-1);
// String c="晚上吃什么饭";
// int d=4;
// System.out.println(c+d);
//乘法
int h=2;
int j=3;
System.out.println(h*j);
//除法
int c=5;
int d=2;
System.out.println(c/d);
double x=c/d;
System.out.println(x);
}
}
运行结果
3
4
今天周五今天放假
-3
2
6
2
2.0
eclipse好用的快捷键:
1. alt+方向上键(移动代码向上移动)
2. Ctrl+D(删除整行)
3. Ctrl+Alt+方向下键(向下复制一行代码)
4. Ctrl+Alt+L(将代码全部对齐)
基本数据类型的转换
-
自动转换 范围小的可以向范围大的进行转换 byte<short<int<long<floa<double
-
强制转换 范围大的向小的进行转换,需要强制类型转换 小范围数据类型 标识语 = (小范围数据类型) 变量名称;
ASCII
- 字符0~9:对应(48-57),A-Z对应(65-90),a-z对应(97-122)
int和char类型数据转换
- char转换成int,字符型和数值型进行转换的时候都会直 询编码表,由于int4个字节,char2个字节,所以属于自动的 类型转换
- int转换成char,需要强制类型转换
- 如果char是汉字,转换成整数查询的就是Unicode编码表
- char类型的最大整数是65535,因为char没有负数
- char可以直接赋值为Unicode编码,格式为luxox,十六 进制