一.变量
-
变量是什么:就是可以变化的量!
-
Java是一种强类型语言,每个变量都必须声明其类型。
-
Java变量是程序中最基本的储存单元,其要素包括变量名,变量类型和作用域。
-
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须有合法的标识符。
- 变量声明是一条完整的语句,因此每声明都必须以分号结束。
-
变量作用域:
public class Demo05 { //属性:变量 //类变量:static 从属于类的同时存在,同时消失 static double salary=1200; //实例变量:从属于对象的,实例变量可以不初始化,不初化输出默认值。 //布尔值:默认值是false; //除了基本类型,其余的默认值都是null; String name; int age; //main:主方法 public static void main(String[] args) { //局部变量:必须声明和初始化值 int i=11; System.out.println(i); //变量类型 变量名字=newDemo5 Demo05 demo05 = new Demo05(); System.out.println(demo05.name); System.out.println(demo05.age); System.out.println(salary); } //其它方法 public void game(){ System.out.println(); } }
二.常量
-
常量:初始化后不能在改变值!不会变动的值。
-
所谓常量可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名; final double PI=3.14;
-
常量名一般用大写字符。
-
三.变量的命名规范
- 所有变量,方法,类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大写。
- 常量:大写字母和下划线
- 类名:首字母小写和驼峰原则。
- 方法名:首字母小写和驼峰原则。
- 局部变量:首字母小写和驼峰原则。
四.运算符
-
Java语言支持如下运算符:
-
算数运算符:+,-,*,/,++,–
-
赋值运算符:=
-
关系运算符:>,<,>=,<=,>>,<<,==,!=instanceof
-
逻辑运算符:&&,||,!
public class Demo06 { public static void main(String[] args) { //且(&&) 或(||) 非(!) boolean b=true; boolean b1=false; System.out.println("b&&b1=\t"+(b&&b1)); System.out.println("b||b1=\t"+(b||b1)); System.out.println("!b||b1=\t"+!(b&&b1)); System.out.println("==============="); //短路运算 仔细看这个代码 int c=5; boolean b2=(c++<4)&&(c<4); System.out.println(c); System.out.println(b2); System.out.println("-------------"); int c1=5; boolean b3=(c1++<4)&&(c1<4); System.out.println(c1); System.out.println(b3); } }
-
位运算符:&,|,^,~,>>,<<,>>>(了解!!!)
package operator; public class Demo07 { public static void main(String[] args) { /* A=0011 1100 B=0000 1101 -------------------- A&B=0000 1100 A|B=0011 1101 A^B=0011 0001//相同取0相反取1 A~B=1111 0010//取B的反 //面试题考官问这样计算2*8=16最快 2*8=16 2*2*2*2 效率极高! //左移右移: << >> 0000 0000 0 0000 0001 1 0000 0010 2 0000 0011 3 0000 0100 4 0000 1000 8 */ System.out.println(2<<2); } }
-
条件运算符?:
package operator;//存在优先级问题 public class Demo09 { public static void main(String[] args) { //三元运算符 //x ? y : z //如果x为真就选y,反之就选z int x=20; String z=x<10?"15":"14";//必须掌握 System.out.println(z); } }
-
扩展赋值运算符:+=,-=,*=,/=
package operator; public class Demo08 { public static void main(String[] args) { //java代码是从上而下运行的 int a=10; int b=20; a+=b;//a=a+b a-=b;//a=a-b System.out.println(a); System.out.println("------------------"); //字符串连接符 + ,String 会转变为String类型拼接 System.out.println("a+b="+a+b); //面试问题:细节问题 System.out.println(a+b+"=a+b"); } }
package operator; public class Demo01 { public static void main(String[] args) { double f=12.50; long l=12356456584565665L; int b=123; short c=23; byte d=5; System.out.println(l+b+c+d+f);//在运算过程中只要有long就是long类型,有double就是double类型 System.out.println(b+c+d);//int类型 System.out.println(c+d);//int类型 } }
-
二元运算符
package operator; public class Demo { public static void main(String[] args) { //二元运算符 //Ctrl+D:复制当前行到下一行 int a=10; int b=25; int c=30; int d=40; System.out.println(a*b); System.out.println(a-b); System.out.println(a/(double)b); System.out.println(a+b); } }
-
关系运算符返回的结果:
package operator; public class Demo03 { //Ctrl+>是收起代码段 public static void main(String[] args) { //关系运算符返回的结果:正确,错误 布尔值 int a=10; int a1=125; //取余,模运算 为5 System.out.println(a1%a) System.out.println(a==a1); System.out.println(a<=a1); System.out.println(a>=a1); System.out,println(a!=a1) } }
-
一元运算符
package operator; public class Demo04 { public static void main(String[] args) { //++ -- 自增 自减 一元运算符 int a=12; int b=a++;//执行完这行代码后,先给b赋值,在自增。 //a=a+1; System.out.println(b); // a=a+1 int c=++a; System.out.println(a); System.out.println(b); System.out.println(c); //幂运算 2^3 2*2*2=8 很多运算,我们会借用一些工具来完成。 double pow=Math.pow(2,3); System.out.println(pow); } }
-