1.数据类型转换
自动类型转换:
short<int<long
float<double
因为取值范围的大小不同所以当存在自动类型转换时取值范围更小的一方会被自动转换为大的一方例如
long a=100
double b=2.5f
这两个例子都体现想了自动类型转换,原因就是long类型大于int整形,double类型大于float浮点型
强制类型转换:
java的强制类型分为两类,基本数据类型转换和对象引用类型转换。
基本数据类型即int,double,float这些基本的数据类型,当高类型(高字节)转向低类型(短字节)时,如double转int,即需要强制转换。
对象引用型转换,指的是子类强制转换为父类的转换。
之所以需要强制转换,是因为子类包含比父类更多的属性和方法,强制转换后,子类以父类的形态出现,暂时只能使用父类的方法。
User user = new User(); Student student= (Student) user;
如果使用非父子类强制转换,那么就会提示语法错误: inconvertible types; cannot cast 'java.lang.Double' to 'java.lang.Integer'。
2.ascii编码表
48=0
65=A
97=a
我们只需要记住这三个,就足够了,其他的码值可以延申记忆
3.运算符
+ 加
- 减
* 乘
/ 除
% 取模
++ 自增
-- 自减
= 赋值
> 大于
< 小于
>=大于等于
<=小于等于
== 等于
!= 不等于
=== 全等于
&& 且
|| 或
! 非
a>b? a:b 三元运算符
4.方法的定义与调用
public static void main(String[] args) { //直接调用 sum(10,10,"*"); //打印调用 System.out.println(sum(10,20,"-")); //赋值调用 sum(10,20,"/"); } public static Object sum(int a,int b,String c){ if(c.equals("+")){ return a+b; }else if(c.equals("-")){ return a-b; }else if(c.equals("*")){ return a*b; }else if(c.equals("/")){ return a/b; } return "请输入正确的运算符"; }
5.条件语句
public static void test(int score,int num){ if(score>=90){ System.out.println("你的成绩优秀"); }else if(score>=80){ System.out.println("你的成绩良好"); }else if(score>=60){ System.out.println("你的成绩及格"); }else { System.out.println("你的成绩不及格"); } switch (num){ case 1: System.out.println("星期一"); break; case 2: System.out.println("星期二"); break; case 3: System.out.println("星期三"); break; case 4: System.out.println("星期四"); break; case 5: System.out.println("星期五"); break; case 6: System.out.println("星期六"); break; case 7: System.out.println("星期星期天"); break; default: System.out.println("您的输入有误"); break; } }
if else 用于条件判断
switch case 用于等值判断,break作用是跳出当前程序