变量和数据类型&运算符
变量
变量的作用:用来存储数据
变量命名的规范:字(字符串)下(_下划线)美($)人(¥) 数 (可以包括数字)骆驼 有意义(可以以字母,下划线,美元符号,人民币符号开头,不能以数字开头,可以包含数字,严格遵照驼峰命名法,并且要有意义)
八种基本数据类型:
(整数型)byte short int long (byte取值范围为-128----+127)
(浮点型)float double
(布尔类型 )boolean
(字符类型)char
String 是引用数据类型
常量
使用 final 修饰 取名全部大写 通常在声明的时候直接赋值 且只能赋值一次 其值不可改变
例:
final int PI=3.14;
Scanner的使用
Scanner用来接收用户在控制台输入的数据
第一步:创建Scanner扫描器对象
Scanner input=new Scanner(System.in);//不要忘记导包 扫描器需要导入 import java.util.Scanner;
第二步:提示用户输入信息
System.out.print("请输入你的名字");
第三部:使用变量进行接收
String name=input.next();
next()根据不同的数据类型进行改变,例如:int类型 为nextInt(),注:不是所有的数据类型都有next与其匹配。
类型转换
注意:类型之间要互相兼容才能互相转换,例如整数类型和浮点类型可以相互转换,但不能与String类型进行转换。
自动类型转换
转换规则:目标类型大于源类型,整个表达式将提升为目标类型。
例:
int a=30;
double b=25.5;
double c=a+b;//此时结果自动提升为double类型
强制类型转换
int a=30;
double b=25.5;
int c=(int)(a+b);//使用(这里写要强转的类型即可)
//口诀:自动提升,手动下降
运算符
赋值运算符 =
基本算术运算符 + 、-、* / % ++ -- (++即表示+1 --即表示-1 其他与数学中一致)
复合算术运算符 +=、-=、*=、/=、%=
a*=3;//等价于 a=a*3; 其他 += -= /= %= 一样的形式
关系运算符
== 、>、<、>=、<=、!=
=为赋值运算符,==为等于运算符
关系表达式的结果为布尔值
>、<、>=、<= 运算符的优先级别高于==、!=
>、<、>=、<=运算符只支持数值类型的数据比较
&& 短路与 必须两个表达式都为true 结果才为true 如果第一个表达式为false 那么将不再继续执行第二个表达式 这是短路效果的重点!!!
& 与 必须两个表达式都为true 结果才为true 区别在于不管第一个表达式结果如何 都将 执行完所有的表达式
|| 短路或 两个表达式有其中一个为true 则整个全部表达式为true 如果第一个 表达式为 true 那么将不再继续执行 同样是短路效果的重点!!!
| 或 两个表达式有其中一个为true 则整个全部表达式为true 区别在于不管第一个表达式结果如何 都将执完所有的表达式
三目运算符(三元运算符)
// 条件 ? 表达式1 : 表达式2 如果条件成立则执行表达式1 否则执行表达式2
//例如: 10>20?(System.out.print("条件成立了")):(System.out.print("条件不成立"));
//结果将输出不成立
运算符优先级
//单目运算符包括! ++ --,优先级别高
//优先级别最低的是赋值运算符
//可以通过()控制表达式的运算顺序,()优先级最高
//从右向左结合性的只有赋值运算符、三目运算符和单目运算符
//算术运算符 > 关系运算符 > 逻辑运算符