java常用语法-- 运算符与表达式

一 算术运算符  + - * /   %取余

String a,b      ---a+b代表字符串相连

String a=“abc”;   int b=3      ---a+b为字符串相连,结果“abc3”

常用语句类似    
    String s="abcdef";
    int i=5; 
    System.out.println("s="+s+",i="+i);   //s=abcdef,i=5

/  ---1除法运算,整数和整数相除,结果还是整数

   ---2小数和小数相除,结果是小数

   ---3整数和小数相除,结果是小数

         float f1=1/3*3;
        System.out.println(f1);   //0.0
        float f2=1.0f/3*3;
        System.out.println(f2);   //1.0
        float f3=1/3*3.0f;
        System.out.println(f3);   //0.0

  注意:1 除数不能为0

             2字符串只能相加  String

           3 小括号优先级最高

       

二  赋值运算符 =

左边必须是变量;左边不能是表达式

b=a+5   // 把a+5的值赋值给b

注:赋值运算符优先级最低

赋值表达式(如c=a+b)的值 就是左边的值,如就是c的值

复合运算符如下:

i+=3 相当于  i=i+3     

i*=3  相当于  i=i*3

三 类型转换

        short s=2;
        int  a=s;
        System.out.println(a);  //2  short赋值给int类型OK

例1

int a=2;

short s;

s=(short)a   //强制类型转换,也叫显示转换,有风险。

例2

        float f=1.0f;
       double l=5.0;
       f=(float)l;

总结: 范围小的类型赋值给范围大的类型,OK ,隐式转换

           范围大的类型赋值给范围小的类型,显示转换,强制类型转换

int i=5;

float f=3.0f;

i=(int)f;

float 赋值给int ,需要用显示转换,会丢掉小数部分

转换只适用于 byte 、short、int、long、float、double、之间转换

那如何从整型转化为字符串??? 方法如下:

方法1:

int i=5;

String s=“”+i;

方法2:

int i=5;

String s=Integer.toString(i);     //5

那如何从字符串转化为整数??? 方法如下:

String s="666";

int i=Interger.parseInt(s2); 

		//数字转化为字符串
	int i=5;
	String s="666";
	s=Integer.toString(i);
    System.out.println(i);  //5
    
    //字符串转化为数字
    int i1=6;
    String s1="666";
    i1=Integer.parseInt(s1); 
    System.out.println(i1);//666

四: 交换ab的值

  

	//交换ab值
	int i=5;
	int j=10;	
	int temp;
	temp=i;// i=5,j=10;temp=5
	i=j;//i=10,j=10,temp=5
	j=temp;//i=10,j=5,temp=5	
    System.out.println("i="+i+",j="+j);  
    


    五 自增自减

a++;  ++a;a=a+1; a+=1

a--; ++a;a=a-1;a-=1

只能普通变量自增

a++  和++a             a++取自增之前的值,++a取自增之后的值

六 关系运算符与关系表达式

<=   >=  ==  !=  > <

结果boolean类型 :true false

 --字符串比较

    String s1="a";
    String s2="ab";
    System.out.println(s1.equals(s2));

七 逻辑运算符

&& 逻辑与 、并且、and and 

|| 

 !   !false ---true       !true --false

短路运算  ---&& 会进行短路运算    &不会进行短路运算

八 条件运算符

表达式1?表达式2:表达式3   --三目运算符

max=(a>b?a:b);

//条件运算符
	int a=10;
	int b;
	b=(a>4?666:888);
	
	System.out.println(b);
	// 判断能否被3整除
	String s=(a%3==0?"能被3整除":"不能被3整除");
	System.out.println(s);
	

猜你喜欢

转载自blog.csdn.net/weixin_43251783/article/details/83216129