1、变量
指计算机内存中的一块存储空间,是存储数据的基本单元
例:
酒店–内存
酒店中包含房间每个房间就相当于是一个变量
房间号-变量名
房间的类型-变量的数据类型
房间的客人-变量值
2、变量的使用
声明:数据类型 变量名;例如:int money;
赋值:变量名=值;例如:money=100;//将数值赋给money
3、变量的声明
定义变量的方法:
- 先声明,再赋值:数据类型 变量名; 变量名=值;
- 声明并赋值:数据类型 变量名=值; //变量未赋值不能使用
- 多个同类型变量的声明与赋值:数据类型 变量1,变量2,变量3=值3,变量4,变量5=值5;
PS:Java是强类型语言,变量的类型必须与值的类型一致
4、数据类型
数据类型分为基本数据类型和引用数据类型
-
基本数据类型:整数、小数、字符、布尔
①整数
字节(byte)类型 1Byte=8bit 一共可存2^8=256个整数 0000 0000 0~127 128个正数 1111
1111 -1~128 128个负数 高位表示符号位1负0正 byte类型的数据标示的数据范围:-128~127
如需为long类型,需在后面加L或l②小数、浮点型
小数/浮点型:采用科学计数法表示
2E3等价于210^3=2000.0;
3E5等价于310^5=300000.0;
double为浮点数的默认类型,如需为float类型赋值,需在字面值后面加F/f,如需为double类型赋值,可以在字面值后面加D/d;③字符型
char 2字节 0-65535 Unicode编码(万国码)
Unicode字符集支持ASCII码,其中每个字符都对应一个十进制整数;
为字符赋值:char c1= ‘A’;
为整数赋值:char c2= 65;
为进制赋值:char c3=’\u0041’;
转义字符:\n 换行符 \t 缩进(制表位) \ 反斜线’ 单引号 " 双引号④布尔
boolean 1字节 ture/false -
引用数据类型:字符串、数组、对象,接口,类
字符串:String 任何""之间的字面值 Unicode字符序列
取值方法:String str1=“你好”;
5、类型转换
自动类型转换:两种类型互相兼容且目标类型大于源类型
byte–>short–>int–>long
float–>double
char不能转换为short
char–>int
int–>float/long
强制类型转换:两种类型互相兼容且目标类型小于源类型
6、表达式
使用运算符连接的变量或字面值,并可以得到一个最终结果。
类型自动提升:两个操作数有一个为double,计算结果自动提升为double;如果没有double,有一个为float,则提升为flaot;如果没有float,有一个为long,则提升为long;如果操作数中没有long,有一个为int,则提升为int;如果没有int,均为short或byte,仍提升为int;
7、运算符
-
算术运算符(两个操作数进行运算)
+加、求和
-减、求差
*乘、求积
/除、求商
%模、求余
++递增、变量值+1
–递减、变量值减1
++/–在后先使用变量x,后进行+/-1赋值运算(先使用,后+/-1); -
赋值运算符
= 直接赋值
+=求和后赋值
-= 求差后赋值
*= 求积后赋值
/= 求商后赋值
%= 求余后赋值; -
关系运算符
大于 >
小于 <
大于等于 >=
小于等于 <=
等于 ==
不等于 != -
逻辑运算符
&& 与(并且) 两个操作数同时为真,结果为真;
|| 或(或者) 两个操作数有一个为真,结果为真;
! 非(取反) 意为"不是" ,真即是假,假即是真; -
逻辑短路运算符
&& 与(并且) 短路与,左侧表达式为假时,不计算右侧,结果即为假;
|| 或(或者) 短路或,左侧表达式为真时,不计算右侧,结果即为真;
& 与(并且) 非短路与,位与运算符
| 或(或者) 非短路或,位或运算符 -
三元运算符
先判断 然后再获取对应的结果
?: //语义:布尔表达式?结果1:结果2 当表达式结果为真,获得结果1;反之获得结果2; -
位运算符:两个操作数基于二进制数 按位进行计算
& 位与 非短路与。两个数位,同时为1,结果为1 | 位或 非短路或。两个数位,有一个为1,结果为1 ^ 异或 对应位上的数,相同为0,不同为1; ~ 求反 按位求反1变0,0变1; >> 右移(带符号) 按位右移1位(高位补原符号位); << 左移 按位 左移1位; >>> 右移(无符号) 按位 右移1位(高位补0);`
8、控制台(键盘)输入
程序运行中,可在控制台(终端)手动录入数据,再让程序继续执行。
java.util.Scanner input = new java.util.Scanner(System.in);
导包语法:import 包名.类名;
//将外部class文件功能引入到自身文件中
书写位置:package
之后(如果有),类的外面,可以有多句。
每个类中默认都有import java.lang.*;
package *;
//引入Scanner包后
import java.util.Scanner;
//或者可以写为:import java.util.*;
public class * {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
}
}
使用顺序:
1、导入java.util.Scanner;
2、声明Scanner类型的变量Scanner sc = new Scanner(System.in);
3、使用Scanner类中对应的函数(区分类型):sc.nextInt();
//获得整数sc.nextDouble();
//获得小数sc.next();
//sc.nextLine();获得字符串sc.next().charAt(0);
//获得单个字符,即字符串的首字母
来源:CSDN
作者:微笑·不失礼
链接:https://blog.csdn.net/qq_44664231/article/details/104648651