一,变量
1.概念:计算机中的一块内存空间,存储数据的基本单元
2.变量的组成部分:数据类型,变量名,数据
3.语法:
(1)先声明,再赋值:
数据类型 变量名; //声明
变量名=值; //赋值
(2)声明的同时并赋值:
数据类型 变量名=值;
(3)同时定义多个相同类型的变量;
数据类型 变量名1,变量名2=值,变量3;
二,java中的数据类型分类
1.简单数据类型,基本数据类型(原始数据)
B-Byte,字节,1字节=8位(8b)b->bit
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB
...
10.24号,称之为 程序员节
(1)整数类型(4种)
byte 1B -128~127
short 2B -32768~32767
int 4B
-2147483648~2147483647
long 8B -922京~922京-1
注意:long的字面值后面需要加L或者l(建议大写,区分数字1)
(2)小数类型(浮点类型-2种)
float:单精度,4B,字面值后面必须加f/F
double:双精度,8B,字面值后面必须加D/d,或是不加
注意:float和double可以采用科学计数法进 行存储
(3) 字符类型(1种)
char 2B ,字面值形式如下:
(4) 布尔类型(1种)
boolean 字面值 true/false
true:代表关系成立
flase:代表关系不成立
2. 对象数据类型、引用数据类型
(1)类,数组,接口等都称为对象类型
(2)以字符串为例:a.字符串:String
b.使用双引号引起来的,一个或者多个字符
String str="helllo"
数据类型实际开发总结:
整数类型通常使用:int
小数类型:double
布尔类型:通常应用判断,循环结构中
字符类型:实际开发不常用
字符串:实际开发频繁使用
三.数据类型之间的转换
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自身变量加一
a--和--a:将a自身变量进行减一
面试/考试常见内容:
int c=a++;先使用后加一
int c=++a:先计算加一,在使用
6.三元运算符
(1)语法:
布尔表达式?表达式1:表达式2
(2)原理:先判断表达式是否成立,结果为true,执行表达式1,否则执行表达式2
六.Scanner(扫描仪)
1.作用:可以让用户输入信息,提高人机交互
2.导包
(1)语法:import包名1.包名2.类名;//导入指定类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); //输入一个字符