常用命令:
“F:”进入到指定盘符
“cd 路径”:进入到指定路径下
javac 编译
java解释执行
标识符:
数据类型:基本数据类型、引用数据类型
今日内容:
常量:13
变量:一块内容可以改变的内存,存储数据
变量名:标识符
变量值:内存中的数据
变量想被使用,那么必须,先声明后赋值
声明的格式:数据类型 变量名;
赋值的格式:变量名=变量值;
数据类型(声明) 变量名=变量值(赋值);
例:int num = 12;
格式:数据类型 变量名[=值];
字符和字符串的区别?
字符:单引号,内部只有一个字符
字符串:双引号,内部可以有多个字符
byte范围:-128到127
java的整型默认都为int型,小数数据都默认为double型,
格式:数据类型 变量名[=值]
数据类型:
1、基本数据类型:数据类型为基本类型
2、引用数据类型变量:数据类型为引用类型
作用域分:
1、局部变量:定义在方法块中的变量(声明在方法代码块中的变量),作用范围就是方法内部
2、全局变量:定义在类的内部,方法的外部,作用于整个类中
java中的运算符:
1、算术运算符+、—、*、%、++、--
例:int b= ++(++i);//不可以,报错。相当于int b= ++(i=1);这是不合法的
int c*=i++;//是错误的,
int c=2;c*=i++;或c*=++i;都是正确的。c*=++(i++);或c*=--(++i);都是错误的
int i=1;
int b=++(++i);//不可以,错误的
int c*=i++;//是错误的,
2、赋值运算符:主要赋值
=、+=、-=、/=、%=
3、关系运算符>、<、>=、<=、==、!=,结果为布尔类型。
4、逻辑运算符:主要应用在布尔类型,结果都是布尔类型
!(非):!true==false
^(异或):true^false==true,true^true==false同为false,异为true
&(与):且,同时为true才为true
&&(短路与):且,同时为true才为true
|(或):或者,只要一个为true,那么结果为true
||(短路或):或者,只要一个为true,那么结果为true
短路与和与的区别?
与(&):无论左边是否为false,都会验证右边的表达式
短路与(&&):只要左边为了false,那么右边就不会验证
或(|):无论左边是否为true,都会验证右边的表达式
短路或(||):只要左边为true,那么右边就不会验证
8、int a = 5;
int b = 4;
boolean b9 = (a++)>(--b) & (--a)%(b++)==1 &(a--)<(b--);
System.out.println(b9+"\t"+a +"\t"+b);//
5>3&5%3==1&5<4
true&false&false=false
a=4,b=3;
a = 5;
b = 4;
boolean b10 = (a++)>(--b) && (--a)%(b++)==1 && (a--)<(b--);
System.out.println(b10+"\t"+a +"\t"+b);
true&&false&& (a--)<(b--)=false
a=5,b=4
9、a = 6;
b = 9;
boolean b11 = (a--)/(b++)<2 | (--a)*(--b)!=4 | (a++)%(b--)==2;
System.out.println(b11+"\t"+a +"\t"+b);//
6/9<2|4*9!=4|4%9==2
true
a=5,b=8
a = 6;
b = 9;
boolean b12 = (a--)/(b++)<2 || (--a)*(--b)!=4 || (a++)%(b--)==2;
System.out.println(b12+"\t"+a +"\t"+b);
true
a=5,10
5、位运算符:操作的是每一个二进制数
位:就是一个二进制数:0或1
字节:由8位二进制组成的B
~(按位取反):取相反的
^(按位异或):相同则为0,不同则为1
|(按位或):同则同,异为1
&(按位与):同则同,异为0
二进制和十进制之间的转换:
二进制和十进制之间的转换?
十进制---- >二进制:除2取余、除尽为止
二进制---- >十进制:累加求和
负十进制----负二进制:
取绝对值
转换为二进制
取反加1
负二进制----负十进制:
减1取反(或取反加1)
转换为十进制正数
乘 -1
13--->二进制
-123-->101
64+32+16+8+2+1
7<<2
(左移)<<:左移,a<<b:a向左移动b位,a<<b:公式a*2的b次幂a*2^b。
有符号右移>>:a>>b:a向右移动b位
无符号右移>>>:a>>>:a向右移动b位,a>>>b公式:a/2的b次幂
例:8>>>1等价于8/2 -7>>>2-->1073741822
计算机的进制:
1、二进制:机器识别:0和1组成
2、十进制:生活用的,由0到9的数字组成
3、八进制:由0到7组成,逢八进位,借1顶8,要求以0开头
4、十六进制:由0到9还有A到F,要求以0x开头
6、字符串连接运算符:结果就是一个字符串 : "+"
三目运算符:X?Y:Z;
X若为true则选Y,若为false则选Z。
例1:int num1=5,num2=3;
String result = num1>num2?"真的啊":"假的吗"
//输出:真的啊
例2:System.out.println(false?'A':'z');//z
int i= 2;
3>4?1.0*i/1:i/5;
答案为:5.0
int i = 2;
3>4?1.0*i/1:i/5;
答案为:0.0
表达式:由变量和运算符按照一定规则组成的语句
表达式的类型:就是结果的数据类型
表达式的值:表达式的结果
推断表达式的值:
根据优先级进行结合,一步步的计算每一步涉及到的变量的值
明天课程:
分支:
1、if-else
2、switch
今日作业:
1.已知m,n,k是整型变量,执行下列语句后, m,n,k分别是多少?
m = n = k = 8; m += n += k += 1;
m =11 ;n =10 ; k =9;
2.int n = 5;n = ++n + ++ n;求n=?
n=13
3.int n = 3;n = ++n + n++;求n=?
n=8
4.int x = 4 , y = 2 , z = 3;求表达式y-=z++*--x的值是多少?
表达式运行之后,x,y,z的值分别是多少?
值是:-7,x=3,y=-7,z=4
5.请写出下面表达式的输出结果:
int a =11;
int b =21;
boolean ben1 = (--a)%(++b)<10 | (a++)/(b--)!=11 | (++a)*(--b)==20 |(++a)<(--b);
System.out.println(ben1+"\t"+a +"\t"+b);
//true 13 19
boolean ben2= (--a)%(++b)<10 || (a++)/(b--)!=11 || (++a)*(--b)==20 ||(++a)<(--b);
System.out.println(ben2+"\t"+a +"\t"+b);
//true 11 21
6.请计算:
a=3,b=4;
(1):(a++)/3+(--b)*2-(a--)%6+(b++)*3-(b--)
//3/3+3*2-4%6+3*3-4=1+6-4+9-4=8
a=3,b=4
(2):(++b)*2-(a--)%4+(a++)*5-(--b)/2+(--a)
//5*2-3%4+2*5-4/2+2=10-3+10-2+2=17
a=3,b=4
(3):(a--)*6+(b++)/3-(--a)*2-(--b)*2+(++a)
//3*6+4/3-1*2-4*2+2=18+1-2-8+2=11
相关文章
- 【幻化万千戏红尘】qianfengDay24-java基础学习:数据库、七大表语句、JDBC反射
- 【幻化万千戏红尘】qianfengDay26-Servlet、http协议、URL基础学习:
- 【幻化万千戏红尘】qianfengDay06-java基础学习:重载、方法、类、对象、构造方法
- 【幻化万千戏红尘】qianfengDay10-java基础学习:成员内部类、静态内部类、局部和匿名内部类,设计模式之简单工厂模式
- 【幻化万千戏红尘】qianfengDay13-java基础学习:String ,StringBuilder,StringBuffer,Date,Calendar
- 【幻化万千戏红尘】qianfengDay08-java基础学习:修饰符、重写、继承、抽象、递归、final
- 【幻化万千戏红尘】qianfengDay02-java基础学习:运算符、进制转换
- 【幻化万千戏红尘】qianfengDay26-Servlet、http协议、URL基础学习:
- 【幻化万千戏红尘】qianfengDay05-java基础学习:方法、return、重载
- 【幻化万千戏红尘】qianfengDay03-java基础学习:for循环,switch,if