变量就是可以变化的量
由于Java是强类型语言,每个变量都必须声明其类型
数据类型 变量名 = 值 ;可以使用逗号隔开声明多个同类型变量
public class Demo07 { public static void main(String[] args) { //int a = 1,b = 2,c = 3; 程序可读性很差 int a = 1; int b = 2; int c = 3; String name = "yizhiqiu"; char x = 'X'; double pi = 3.14; } }
Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
作用域:类变量、实例变量、局部变量
public class Demo08 { //类变量 static static double salary = 2500; //属性:变量 //实例变量:从属于对象;如果不自行初始化,这个类型的默认值 0 0.0 //布尔值:默认是false //除了基本类型,其余默认值都是null String name; int age; //main方法 public static void main(String[] args) { //局部变量;必须声明和初始化值 只在这里面有用 int i = 10; System.out.println(i);//10 Demo08 demo08 = new Demo08(); System.out.println(demo08.age);//0 System.out.println(demo08.name);//null //类变量 static System.out.println(salary);//2500 } //其他方法 public void add(){ } }
初始化后不能再改变的值! 不会变动的值
final 常量名=值;
常量名一般使用大写字符
public class Demo { //修饰符,不存在先后顺序 static final double PI = 3.14; final static double PE = 4.14; public static void main(String[] args) { System.out.println(PI);//3.14 System.out.println(PE);//4.14 } }
命名规范:
所有变量、方法、类名:见名知意
类成员变量:首字母小写和驼峰原则:monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则GoodMan
方法名:首字母小写和驼峰原则runRun()
算数运算符:+、 —、 *、 /、 %、 ++、 --
赋值运算符 =
关系运算符>, <, >=, <=, ==, !=, instanceof
逻辑运算符&& 与,||或 ,!非
位运算符:& , | , ^ , >> , << , >>>
条件运算符: ?:
扩展赋值运算符:+= ,-= , *= , /=
package operator; //逻辑运算符 public class Demo05 { public static void main(String[] args) { // 与(and) 或(or) 非(取反) boolean a = true; boolean b = false; System.out.println("a && b"+(a&&b));//两个都为真 结果才为true System.out.println("a || b"+(a||b));//有一个为真 结果采薇true System.out.println("!(a && b)"+!(a&&b)); //短路运算 int c = 5; boolean d = (c<4)&&(c++<4); System.out.println(d);//false System.out.println(c);//5 } }
位运算:
package operator; public class Demo06 { public static void main(String[] args) { /* 位运算: A = 0011 1100 B = 0000 1101 A&B = 0000 1100 A|B = 0011 1101 A^B = 0011 0001 ~B = 1111 0010 2 * 8 = 16 << 左移 *2 >> 右移 /2 效率极高。。 0000 0000 0 0000 0001 1 0000 0010 2 0000 0011 3 0000 0100 4 0000 1000 8 0001 0000 16 */ System.out.println(2<<3);//16 } }
字符串连接符:
package operator; public class Demo07 { public static void main(String[] args) { int a = 10; int b = 20; a+=b; //a = a+b a-=b; //a = a-b System.out.println(a); //字符串连接符 + ,String System.out.println(a+b); System.out.println(""+a+b);//1020 System.out.println(a+b+"");//30 } }
三元运算:
package operator; public class Demo08 { public static void main(String[] args) { // x ? y :z //如果x==true,则结果为y,否则结果为z int score = 80; String type = score <60 ?"不及格":"及格"; System.out.println(type); } }