一、变量
1. 概念:计算机中的一块内存空间,存储数据的基本单元。
2. 组成部分:数据类型、变量名、数据。
3.语法:
(1)先声明,再赋值:
数据类型 变量名;
(2)声明的同时赋值:
数据类型 变量名 = 值;
(3)同时定义多个相同类型的变量:
数据类型 变量名1, 变量名2 = 值, 变量名3;
二、Java中的数据类型分类
1. 简单数据类型、基本数据类型(原始数据):
B-Byte(字节),1个字节 = 8位(b)
b(位)b-bit
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
...
(1)整数类型:4种:
byte 1B -128~127
short 2B -32768~32767
int 4B -2147483648~2147483647
long 8B -922京~922京-1
注意:在long的字面值后面需要加L或l(建议大写,防止和数字1混淆),若没有超过int的范围,可以不加l
(2)小数类型:2种:
float(单精度浮点型):4B
double(双精度浮点型):8B
注意:float字面值后面必须加F或f
(3)字符类型:1种:
char(字符型)
'\n':换行
'\t':水平跳格
'\' ':单引号
'\" ':双引号
(4) 布尔类型(1种):
boolean(字符型) 字面值 true/false
true:代表关系成立
false:关系不成立
2. 对象数据类型、引用数据类型:
(1) 类、数组、接口等都称为对象类型。
(2) 以字符串为例:
a. 字符串:String
b. 使用 双引号引起来的 一个或是多个字符
String str = "hello";
(3)数据类型实际开发总结:
整数类型通常使用:int
小数类型:double
布尔类型:通常应用判断、循环结构中
字符类型:实际开发不常用
字符串:实际开发频繁使用
(4)实际存储数据:根据项目业务
姓名 :String name ="小羊" ;
年龄 : int age = 18;
成绩 :double score = 99.5;
性别 :String sex = "男";
char c = '男';
int flag = 1; // 1-男 0-女
boolean sex = true; // true-男 false-女
电话: String tel = "13763134469";
地址: String addr = "天津市武清区";
身份证号: String id = "37082820050924203x";
三、数据类型之间的转换
1. 自动类型提升
(1) 场景:小数据类型赋值给大数据类型(存储的数据范围衡量数据的大小)。
(2) 规则:
byte->short->int->long->float->double
char->int->long->float->double
2. 强制类型转换
(1) 场景:大数据类型赋值给小数据类型,需要强制类型转换。
(2) 语法:
源数据类型 变量名 = 值;
目标类型 变量名2 = (目标类型)变量名;
四、表达式
1. 理解:表达式由字面值、变量、运算符组成式子,通常有一个结果。
2. 表达式的结果规则:
(1) 如果表达式中有double类型,结果为double
(2) 表达式中没有double类型,但有float,结果为float
(3) 表达式中既没有double类型,也没有float类型,但有long,结果为long
(4) 其余结果为:int
五、运算符
1. 算数运算符
+、-、*(乘法)、/(除法)、%(取余数/取模)
注意:+ 的两种用法:
a. 如果+两端都为数值类型,则为加法运算。
b. 如果+两端有一端为字符串类型,则为字符串拼接。
2. 赋值运算符
=、+=、-=、*=、/=
3. 比较运算符
>(大于)、>=(大于等于)、<(小于)、<=(小于等于)、==(等于)、!=(不等于)
注意:被关系运算符连接的表达式结果类型为布尔类型,所以关系运算符连接的表达式也被称为布尔表达式。成立:返回true,不成立:返回false。
4. 逻辑运算符
&&(逻辑与):两端连接的为布尔表达式,只有当两端同时为true是结果才为true。
||(逻辑或):两端连接的是布尔表达式,只要有一端为true,结果就为true。
!(逻辑非):在结果上取反。
5. 一元运算符
++(自增)、--(自减)
实际开发应用:
a++和++a:将a自身变量值增加1
a--和--a:将a自身变量值减少1
面试/考试常见内容:
int c = a++; 先使用a的值,再加1。
int c = ++a; 先对a的值加1,再使用a的值。
6. 三元运算符
布尔表达式 ? 表达式1 : 表达式2
若布尔表达式的结果为true,则执行表达式1;
若布尔表达式的结果为false,则执行表达式2。
六、Scanner(扫描仪)
1. 作用:可以让用户输入信息,提高人机交互
2. 导包:
(1)语法:
a. 导入包中指定类
import 包名1.包名2.类名;
b. 导入包中的所有类
import 包名1.包名2.*;
(2)定义在package语句后面,所有类的上面。
(3)例如:import java.util.Scanner;
3. 步骤:
(1)导入包:
import java.util.Scanner;
import java.util.*;
(2)创建对象:
Scanner sc = new Scanner(System.in);
(3)使用:
int n = sc.nextInt(); //输入一个整数
double d = sc.nextDouble(); // 输入一个小数
String s = sc.next(); //输入一个字符串
char c = sc.next().charAt(0); //输入一个字符