数据类型(存储数据用的 系统会在内存中开辟一块空间使用)
1.基本数据类型
整数型
byte 存储的数据 占1个字节 8个二进制位表示 0000 0000
1字节 可以表示多少个数 2*8个数 256个数
1字节 取值范围 -128到127
short 短整型 2个字节
int 整型 4个字节(常用)
long 长整型 8个字节
小数型
float 4个字节
double 8个字节 (double)
字符型
字符串型
2.引用数据类型 数组 类 接口
在程序运行当中 不能修改的量就是常量
声明一个变量---作用存储数据的数据类型 变量名 = 初值;
double 是存储小数的,但是如果赋值的是一个整数,这时系统会进行隐式转换,
把小的类型转换成大的类型,强制类型转换 会丢失数据的精度
声明一个小数 系统默认 使用的是double类型
特殊类型 字符类型
特点:字符类型可以和整型相互转换
声明字符型 使用单引号
字符串和数字 使用+号连接的时候,相当于直接做字符串的拼接,和字符串相加,一定会得字符串
运算符
算术运算符 + - * / %(取余运算符) ++ --;
关系运算符 > < >= <= == !=
使用关系运算符,使用用来判断的,并且判断结束后,会有一个结果(布尔类型的结果)
逻辑运算符(用来判断 返回一个布尔值);
&& 逻辑与 (条件1) && (条件2) 一假则假
|| 逻辑或 (条件1) || (条件2) 一真则真;
! 逻辑非 非真即假
取余运算(用的最多的 是对2取余),判断是不是偶数
自增运算(++) 和 自减运算(--)
++在前的时候 先自增 再参与运算
++在后的时候 先参与运算 再自增
声明一个布尔类型变量,只有两个值 true false;声明状态 判断时候用
逻辑与的短路现象
一假得假 如果条件1已经不成立了,那么系统不会执行后面的语句
逻辑或短路
一真则真 如果条件1为真 那么后面就不会执行
1.顺序结构
2.分支结构
if switch
if三种书写形式:
1.if(判断条件){
执行的语句
}
2.if(判断条件){
执行语句1(条件成立时执行)
}else{
执行语句2(条件不成立时执行)
}
3. if(条件1){
执行语句1(条件成立时执行)
}else if(条件2){
执行语句2(条件不成立时执行)
}else{
执行语句3
}
//类Scanner
public class Demo04{
public static void main(String[] args) {
System.out.println("请输入一个数"); //从键盘输入一个数
Scanner scanner = new Scanner(System.in); //创建系统提供的类的对象
String aaa = scanner.nextLine(); //接收键盘输入的字符串
int num = Integer.parseInt(aaa); //将字符串转换成int数
System.out.println("输入的数为:" + num);
}
}
switch (被匹配的值) {
case 匹配的值1:
执行语句1
break;
case 匹配的值2:
执行语句2
break;
可以有很多个case...
default:
如果前面都没有匹配上
就执行default
break;
}
理论上来说,能使用if的,就一定能使用switch语句
那么什么时候使用if,什么时候switch?
如果判断时候,是个范围 如0-100;使用if,相对简单一点
如果判断时候,是几个值,使用switch,相对简单一点
三目运算符
(判断条件) ? 值1:值2;
判断条件成立 返回 值1 反之 返回 值2
//求3个数的最大值
public class Demo06 {
public static void main(String[] args) {
//求两个数的最大值
int num1 = 10;
int num2 = 15;
//定义一个变量来保存这个最大值
int max = 0;
//接收三目返回来的值
max = (num>num2) ? num1:num2;
System.out.println("最大值为:" + max);
//求三个数的最大值
int num3 = 20;
int maxThree = 0;
maxThree = (max>num3) ? max:num3;
System.out.println("三个数的最大值:" + maxThree);
}
}
while循环
while(循环条件){
循环体
}
//计算1-10的和
public class Demo07 {
public static void main(String[] args) {
int num = 1;
int sum = 0;
while(num<=10) {
sum = sum + num;
num++;
System.out.println(sum);
}
}
}