二.变量和运算符
1.变量和计算机存储单元
变量是内存中装载数据的小盒子,只能用来存取数据。
变量名属于标识符,合法标识符的要求:大小写英文字母,数字,$_都可以
变量定义时可以不赋值,使用时再赋值,但是不赋值不能使用
变量使用时有作用域,全局变量和局部变量之分
变量不可以重复定义
计算机中存储运算的最小单位为一个字节(byte)
1b(字节)=8bit(比特位)
2.数据类型和常量
byte 一个字节 float 四个字节
short 两个字节 double 八个字节
int 四个字节 char 两个字节
long 八个字节 boolean 一个字节
范围排序:byte,char,short,int,long,float,double
3.数据类型转换
从左到右,范围小的自动转换为范围大的
char a=byte;
强制类型转化:
byte b=(byte)char
4.运算符和优先级
算术运算符 +-*/%++--
赋值运算符 +=-+*=/=%=
比较运算符 ==!=<><=>=
逻辑运算符&|^!&&||
a&&b 短路与,如果a为false,不需要计算b。
a&b,不管a的结果是多大,都需要计算b。
三目运算符:a?b:c
当a为true时,执行b;当a为false时,执行c
位运算对二进制进行,操作的数必须是整型
一个数据对另一个数据异或两次,数字不变
任何数和自身异或,得到0
任何数和零异或,得到自身
左移一位,相当于乘二,右移一位,相当于除二
三.引用数据类型、流程控制语句和数组
1.引用数据类型
Scanner类
Scanner sc=new Scanner(System.in)
int i=sc.nextInt();
string s=sc.next();
Random类
public int nextInt(int maxvalue);
public double nextdouble()
创建对象Random r=new Random();
调用方法赋值b=r.nextInt(maxvalue);
2.流程控制语句
if
if else
if else if else
while
for
do while
switch case
default
break
break语句:跳出当前所在的循环体
如果不加说明,单独使用break只能跳出当前内层循环
continue语句:提前结束本次循环,进入下次循环
return语句:结束一个方法,返回给上层调用者。
也可以用来结束循环,如果return所在方法中有循环,无论是否还有上层循环,直接跳出当前方法
不再执行循环后面的语句。
3.数组
一维数组
长度不可变,元素类型相同
定长,所有元素的类型相同
int【】a=new int【10】
int【】a=new int【】{1,2,3,4}
int【】a={1,2,3,4}