Java基础2:常量变量以及运算符

文章目录


前言

同样的,常量变量以及运算符这些也是我们学习Java必不可少的一部分基础知识!最后的一点是包机制,为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。


一、变量以及常量

1.变量

数据类型   变量名 = 值 ;可以使用逗号隔开声明多个类型变量

//int a,b,c;
//int a=1,b=2,c=3;//程序可读性
String name="xiaoyi";
char x='X';
double pi=3.14;

2.变量作用域

(1)局部变量;必须声明和初始化值(是在方法里的,出了方法不能用)

(2)实例变量    从属于对象;如果不自行初始化,这个类型的默认值 0  0.0  u0000
         布尔值:默认是false
         除了基本类型,其余的默认值都为null

(3)类变量    static

3.常量

常量的值设定后,在程序运行过程中不允许被改变。

final 常量名=值;

常量名一般用大写字符

//修饰符,不存在先后顺序
final static double PI=3.14;

4.变量命名规范  

所有变量,方法,类名:见名知意
类成员变量:首字母小写和驼峰原则:monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则:Man,GoodMan
方法名:首字母小写和驼峰原则:run(),runRun()

二、运算符

1.基本运算符

(1)加减乘除

int a=10;
int b=20;
int c=30;
int d=40;

System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println((double) a/b);

(2)如果有不同类型的混合运算,则自动升为混合运算类型中最高类型

long a=123123123123123L;
int b=123;
short c=10;
byte d=8;
System.out.println(a+b+c+d);//有long就是long(如果有double就是double)
System.out.println(b+c+d);//都是整形(符合优先级类型)
System.out.println(c+d);//int

(3)关系运算符返回的结果:正确,错误   布尔值

int a=10;
int b=20;
int c=21;
System.out.println(a>b);//false
System.out.println(a<b);//true
System.out.println(a==b);//flase
System.out.println(a!=b);//true
System.out.println(c%a);//  c/a    21/10 =2....1   (模运算)

 2.自增自减  幂运算  扩展运算符

(1)自增自减

//++   --   自增,自减   一元运算符
int a=3;
int b=a++; //执行完这行代码后,先把a的值赋给b,再自增
//a++   a=a+1(相当于先b=a,再a=a+1)
System.out.println(a);
//++a   a=a+1(相当于先a=a+1,再c=a)
int c=++a;  //执行完这行代码前,先自增,再给c赋值

(2)幂运算    2^3(没有这个符号)    2*2*2=8    很多运算,使用工具类来操作 

double pow = Math.pow(2, 3);
System.out.println(pow);

 (3)扩展运算符   +=  -=  *=   /=

int a=10;
int b=20;
a+=b;//a=a+b
a-=b;//a=a-b
//字符串连接符   +   String类型
System.out.println(a+b);
System.out.println(""+a+b);//1020 拼接在一起
System.out.println(a+b+"");//30

 3.逻辑运算符   位运算符   三元运算符

(1)逻辑运算符有 与(&&)或(||)非(!)

逻辑与运算:两个变量都为真,结果才为true
逻辑或运算:两个变量有一个为真,结果则为tr
如果是真,则变为假,如果是假,则变为真

逻辑与运算会出现短路运算:即如果前面为错就不会继续执行后面的。

int c=5;
boolean d=(c<4)&&(c++<4);//(c<4)恒为错,就不会继续执行后面的,
System.out.println(d);
System.out.println(c);
//运行结果为  d=false    c=5(如果执行了后面的那么c应该为6)

 (2)位运算

与运算:只有两个都是1才是1,否则为0
或:如果都是0则为0,否则为1
异或运算:两者相同则为0,否则为1
取反

A=0011 1100
B=0000 1101
-----------------------------------------------------
A&B  =0000 1100 (与运算,只有两个都是1才是1,否则为0)
A|B  =0011 1101 (或,如果都是0则为0,否则为1)
A^B  =0011 0001 (异或运算,两者相同则为0,否则为1)
~B   =1111 0010 (取反)
2*8=16    2*2*2*2
效率高
<<(左移)    相当于把数字*2
>>(右移)    相当于把数字/2

(3)三元运算符

x?y:z
如果x==true,则结果为y,否则为z

三、包机制

为了更好的组织类,Java提供了包机制,用于区别类名的命名空间

一般利用公司域名倒置作为包名   例如   com.xiaoyi.www

右击src 新建一个package包即可

 

假设想要导入一个包里的所有类,但这个包中类有很多

可以     import com.xiaoyi.struct.*; (导入这个包中的所有类)

  • 24
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值