Java基础学习
1、算数运算符
1、字符
拿字符在计算机底层对应的数值来计算
A=65 ;//A-Z连续
a=97;//a-z连续
0=48;//0-9连续
一个算数表达式中包含多个基本数据类型的值的时候,整个算数表达式的类型会自动进行提升;
byte,short,char都将被提升到int类型
整个表达式的类型自动
byte,short,char->int->long->float->double
public class OperatorDemo02
{
public static void main(String[]args){
//定义两变量
int i =10;
char c='A';//‘A’是65
c='a';//'a'的值是97
c='0';//'0'的值是48
System.out.println(i+c);
//char ch=i+c;
//char类型会被自动提升为int类型
int j =i+c;
System.out.println(j);
//int k=10+13.14;
//13.14是double类型的,最终计算结果为double
double d=10+13.14;
System.out.println(d);
}
}
2、字符串
字符串相加完成的是字符串的拼接,当有其他数字或字符时,按加号从左往右运行算数运算。
以上运行结果:
itheima666,100年黑马
2、赋值运算
public class fuzhi{
public static void main(String[] args){
//把10赋值给int类型的变量
int i=10;
System.out.println("i:"+i);
//+=把左边和右边的数据做假发操作,结果赋值给左边
i+=20;
//i=i+20;
System.out.println("i:"+i);
//注意:扩的赋值运算符彻底隐含了强制类型转换
short s=10;
//s=(short)(s+20);(正确)
s+=20;//(正确)
//s=s+20; (错误: 不兼容的类型: 从int转换到short可能会有损失)
System.out.println("s:"+s);
}
}
3、自增运算符
//自增运算符
public class zizeng{
public static void main(String[] args){
//定义变量
int i=10;
System.out.println("i:"+i);//i=10
//单独使用
//i++;
//System.out.println("i:"+i);//i=11
//++i;
//System.out.println("i:"+i);//i=11
//参与操作使用
//int j=i++;//++在后,先赋值再加
//System.out.println("i:"+i);//i=11
//System.out.println("j:"+j);//j=10
int j=++i;//++在前,先加后赋值
System.out.println("i:"+i);//i=11
System.out.println("j:"+j);//j=11
}
}
4、关系运算符
关系表达式的结果为true或者false
注意:=表示赋值,将后边的赋值给前边的
5、逻辑运算符
定义:连接关系表达式或者布尔类型的常量或变量
public class YunSuanFu{
public static void main (String[] args){
//定义变量
int i=10;
int j=20;
int k=30;
//& 有false则false
System.out.println((i>j)&(i>k));//false & false
System.out.println((i<j)&(i>k));//true & false
System.out.println((i>j)&(i<k));//F&T
System.out.println((i<j)&(i<k));//T&T
System.out.println("..........");
//| 有true则true
System.out.println((i>j)|(i>k));//false & false
System.out.println((i<j)|(i>k));//true & false
System.out.println((i>j)|(i<k));//F&T
System.out.println((i<j)|(i<k));//T&T
System.out.println("..........");
//^相同为false不同为true
System.out.println((i>j)^(i>k));//false & false
System.out.println((i<j)^(i>k));//true & false
System.out.println((i>j)^(i<k));//F&T
System.out.println((i<j)^(i<k));//T&T
System.out.println("..........");
//!
System.out.println((i>j));//输出->false
System.out.println(!(i>j));//输出->true
}
}
6、短路逻辑运算符
注:最常用的是&&,||,!
7、三元运算符
可以获取两个值中的最大值或最小值;
/*三元运算符
格式:
关系表达式?表达式1:表达式2;
范例:
a>b ? a:b
执行流程
首先计算关系表达式的值(true或false)
如果为true,结果为表达式1
如果false,结果为表达式2
*/
public class SanYuan{
public static void main(String[] args){
//定义两变量
int a=10;
int b=20;
//获取两数据中的最大值
int max=a>b?a:b;
//输出结果
System.out.println("max:"+max);
}
}