变量
不建议一行定义多个变量,这样会影响变量的可读性。
变量作用域
public class Demo3 {
static int allClicks=0; //类变量
String str = "hello"; //实例变量
public void method(){
int i =0; //局部变量
}
}
public class Demo3 {
//类变量 static 从属于类的
static double salary = 2500;
//属性:变量
//实例变量:从属于对象
//未赋值时为默认值 0 0.0 false,除了基本类型都是null;
String name;
int age;
//main方法
public static void main(String[] args) {
//局部变量:必须声明和初始化值
int i =10;
//此处是使用实例变量的方法
//变量类型 变量名字 = new Demo03();
Demo3 demo3 = new Demo3();
System.out.println(demo3.age);
//类变量
System.out.println(salary);
}
//其他方法
public void add(){
}
}
变量常量
//修饰符,不存在先后顺序
static final double PI = 3.14
变量命名规则
所有变量、方法、类名:见名知意
类成员变量:首字母小写和驼峰原则: monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则: Man, GoodMan
方法名:首字母小写和驼峰原则: run(), runRun()
运算符
根据操作数的类型来决定输出值的类型(低到高转化,相关细节见Day1)
一元运算符
public class Demo1 {
int a = 3;
int b = a++; //执行完这行代码后,先给b赋值,再自增
int c = ++a; //执行完这行代码前,先自增,再赋值
}
逻辑运算符
逻辑运算符存在短路运算
即判断A&&B时,A为假时,就不判断B的情况了
位运算符
public class Demo2 {
/*
A = 0011 1100
B = 0000 1101
位运算的逻辑运算,按每一位的逻辑运算输出到每一位上
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~B = 1111 0010
*/
/*
问求2*4次方咋最快,不使用2*2*2*2
使用位运算 效率极高
<<
>>
*/
public static void main(String[] args) {
System.out.println(2<<3);//16
}
}
字符串连接
public static void main(String[] args) {
System.out.println(2<<3);//16
int a = 10;
int b = 20;
//字符串连接符 + , String + int 的情况,int会转化成String型
System.out.println(""+a+b);//1020
System.out.println(a+b+"");//30
}
三元运算符
x?y:z 判断x,如果为真结果就为y,如果为假结果就为z