一、数据类型
1、基本数据类型
1.整数类
2.浮点类
3.布尔类
4.字符类
2、引用数据类型
String属于引用数据类型,而不是基本数据类型!
3、数据类型的转换
1.为什么要进行数据类型转换
在Java中要求等号左边和等号右边的类型要一致。如果出现不一致,就需要进行数据类型转换
2.自动类型的切换
在数据类型兼容的情况下, 小转大就是自动类型转换
自动类型转换也称之为隐式类型转换,即不需要做任何操作
例:
public static void main(String[] args){
//自动类型转换
byte b = 19;
//i的类型为int b的类型为byte
int i = b;
System.out.println(i);
int num1 = 100;
double num2 = num1;
System.out.println(num2);
//char类型的自动类型转换
char c1 = 'a';
nt c2 = c1;
System.out.println(c2);
}
3.强制类型转换
在数据类型兼容的情况下, 大转小就是强制类型转换
强制类型转换也称之为显式类型转换,需要添加对应语法
例:
public static void main(String[] args){
//强制类型转换
double n1 = 100;
//n1的类型为double n2的类型为int
int n2 = (int)n1;
System.out.println(n2);
int c3 = 97;
char c4 = (char)c3;
System.out.println(c4);
//对表达式进行类型转换
double d1 = 10;
double d2 = 12;
int d3 = (int)(d1 + d2);
System.out.println(d3);
}
二、运算符
1、数学运算符
+ - * / % ++ --
例:
public static void main(String[] args){
//算术运算符
int a = 10;
int b = 20;
System.out.println(a+b);
System.out.println(a-b);
System.out.println(a*b);
System.out.println(a/b);
System.out.println(a%b);
System.out.println("hello"+1+2); //hello12
System.out.println(1+2+"hello"); //3hello
System.out.println(1+2+"hello"+3+4);//3hello34
int c = 34;
//获取c这个数据中的十位
System.out.println(c/10);
//获取c这个数据中的个位
System.out.println(c%10);
int d = 10;
d++; //d = d + 1;
System.out.println(d); //11
++d;
System.out.println(d); //12
System.out.println(d++); //12 13
System.out.println(++d); //14
}
2、赋值运算符
= += -= *= /= %=
例:
public static void main(String[] args){
//赋值运算符
int a = 10;
a += 2; //相当于 a=a+2;
a -= 3; //a = a - 3;
a *= 4; //a = a * 4;
a /= 5; //a = a / 5;
a %= 6; //a = a % 6;
}
3、关系运算符
> < >= <= != ==
例:
public static void main(String[] args){
//关系运算符 结果:boolean类型
int a = 10;
int b = 20;
System.out.println(a > b);
System.out.println(a >= b);
System.out.println(a < b);
System.out.println(a <= b);
System.out.println(a == b);
System.out.println(a != b);
}
4、逻辑运算符
&& || !
例:
public static void main(String[] args){
//逻辑运算符 结果:boolean类型
/*
&&:所有的结果为true,最终结果才是true
短路与:只要有一个结果为false,就不会执行后面的表达式
||:所有的结果只要有一个为true,最终结果就是true
短路或:只要有一个结果为true,就不会执行后面的表达式
!: 对结果进行取反
*/
int a = 17;
//问a是否是一个偶数且大于10
//boolean bool = a % 2 == 0 && a > 10;
System.out.println(a % 2 == 0 && a > 10);
//问a是否是一个奇数数或小于15
System.out.println(a % 2 != 0 || a < 15);
//问:a是否是一个奇数
System.out.println(!(a % 2 == 0));
}
5、三目运算符
boolean类型表达式 ? 结果1 : 结果2;
例:
public static void main(String[] args){
//三目运算符
/*
boolean类型表达式 ? 结果1 : 结果2;
*/
//判断年龄如果大于18岁,输出成年人,否则输出未成年人
int age = 70;
String s = age > 18 ? "成年人" : "未成年人";
System.out.println(s);
//a和b 输出较大的那个数字
int a = 10;
int b = 20;
int num = a > b ? a : b;
System.out.println(num);
}
三、控制台录入
//1、创建⼀个键盘录⼊扫描对象
Scanner sc = new Scanner(System.in);
System.out.println("请输⼊⼀个数字");
int num = sc.nextInt();
System.out.println("你输⼊的数字为:"+num);
System.out.println("请输⼊⼀个⼩数");
double num2 = sc.nextDouble();
System.out.println("你输⼊的数字为:"+num2);
System.out.println("请输⼊⼀个字符串");
String str = sc.next();
System.out.println("你输⼊的字符串为:"+str);