格式详细解释:
一、引言
1.1 生活中变量
变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。
变量
2.1变量的定义流程
声明:数据类型 变量名;int money; (开辟整数变量空间)。
赋值:变量名 = 值;money = 100; (将整数值赋给变量)。
应用:System.out.print(money);
注意:Java是强类型语言,变量的类型必须与数据的类型一致。
== 额外知识: java是强语言类型 ==
- 强语言类型: 声明变量的时候 确定变量的类型
- 弱语言类型:声明变量的时候 变量的类型是不确定的
public class TestVariable{
public static void main(String[] args){
//声明变量,语法:数据类型 变量名;
int money; //在内存中开辟了一块整数空间
//赋值,语法:变量名 = 值;
money = 100; //将100赋值给money变量空间
System.out.println(money); //打印变量中的值
System.out.println("money"); //打印文本
}
}
2.2 变量的定义方式
声明变量的3种方式:
- 先声明,再赋值:【常用】
- 数据类型 变量名;
- 变量名 = 值;
- 声明并赋值:【常用】
- 数据类型 变量名 = 值;
- 多个同类型变量的声明与赋值:【了解】
- 数据类型 变量1 , 变量2 , 变量3 = 值3 , 变量4 , 变量5 = 值5;
public class TestVarDefined{
public static void main(String[] args){
//声明并赋值
int age = 10; //将声明的语法与赋值的语法合二为一
System.out.println(age);
//同时声明多个同类型变量
int a , b , c , d = 44 , e = 55;
a = 11;
b = 22;
c = 33;
System.out.println(a);
System.out.println(b);
System.out.println(c);
System.out.println(d);
System.out.println(e);
}
}
三 数据类型(重点)
3.1 数据类型
Java中的变量具有严格的数据类型区分。(强类型语言)
在Java语言中,任何一个值,都有其对应类型的变量。
3.1.1 基本数据类型(整数)
注意:int为整数的默认类型,如需为long类型赋值较大整数时,需在值的后面追加“L”。
/**
基本数据类型(整数)
*/
public class TestType{
public static void main(String[] args){
//数据类型 变量名 = 值;
byte b = 127;// -128 ~ 127 (共计256个整数)
System.out.println(b);
short s = 32767;//-32768 ~ 32767 (共计65536个整数)
System.out.println(s);
int i = 2147483647;//-2147483648 ~ 2147483647 (共计42亿多个整数)
System.out.println(i);
//Java中所有的“整数字面值”的默认类型是int,当整数字面值超过int的取值范围时,则提醒“过大的整数”
long l1 = 2147483648L;//显示告知JVM,此值为long类型
long l2 = 9223372036854775807L;//-9223372036854775808L ~ 9223372036854775807L
System.out.println(l1);
System.out.println(l2);
}
}
3.1.2 基本数据类型(小数/浮点数)
浮点型数值采用科学计数法表示:
- 2E3 等价于 2 * 10 ^ 3(结果:2000.0)
- 3E5 等价于 3 * 10 ^ 5(结果:300000.0)
注意:double为浮点数的默认类型,如需为float类型赋值时,需要在值的后面追加“F”。
/**
基本数据类型(小数/浮点数)
*/
public class TestType2{
public static void main(String[] args){
//float 单精度浮点型、double 双精度浮点型
double d = 1.2;
System.out.println(d);
double d2 = 1;
System.out.println(d2);
float f = 1.5F; //任何“小数字面值”默认类型都是double,如果要存储到float变量中,需显示追加“F”
System.out.println(f);
//科学计数法
double d3 = 2E3; // 2 * 10 ^ 3
System.out.println(d3);
double d4 = 2E7; // 2 * 10 ^ 7 20000000.0
System.out.println(d4);
float f2 = 5E4F; // 5 * 10 ^ 4 追加F代表float
System.out.println(f2);
//取值范围的差异
//float正数取值范围:0.0000000000000000000000000000000000000000000014F ~ 340000000000000000000000000000000000000.0F
float floatMin = 0.0000000000000000000000000000000000000000000014F; //float的最小正数
float floatMax = 340000000000000000000000000000000000000.0F; //float的最大正数
System.out.println(floatMin);
System.out.println(floatMax);
//float负数取值范围:-340000000000000000000000000000000000000.0F ~ -0.0000000000000000000000000000000000000000000014F
float floatMin2 = -340000000000000000000000000000000000000.0F;//个十百千万亿兆京垓。。。。。那由他
float floatMax2 = -0.0000000000000000000000000000000000000000000014F;
System.out.println(floatMin2);
System.out.println(floatMax2);
//double正数取值范围:
double doubleMin = 4.9E-324;//0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000049;
double doubleMax = 1.7E308;//1700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.0;
System.out.println(doubleMin);
System.out.println(doubleMax);
}
}
3.1.3 基本数据类型(布尔)
-
可直接赋值true / false
-
- 也可赋值一个结果为true / false的表达式
[注意:Java中的boolean不能参与算数运算。]
public class TestType3{
boolean b1 = false; // true / false
System.out.println(b1);
boolean b2 = 5 > 4;
System.out.println(b2);
}
}
3.1.4 基本数据类型(字符-1)
前置知识:
- ASCII(American Standard Code for Information Interchange)美国信息交换标准码。
- 基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。
- ASCII是最通用的信息交换标准,为英文字符设定了统一并且唯一的二进制编码。
3.1.5 基本数据类型(字符-2)
- Unicode编码
- Unicode(万国码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。
- 它为每种语言中的每个字符设定了统一并且唯一的二进制编码。
- 以满足跨语言、跨平台进行文本转换、处理的要求,(其中包含了ASCII编码)。
3.1.6 基本数据类型(字符-3)
- Unicode中每个字符都对应一个二进制整数,可以使用多种方式赋值。
- 字符赋值:char c1 = ‘A’;(通过’'描述为字符赋值)
- 整数赋值:char c2 = 65;(通过十进制数65在字符集中对应的字符赋值)
- 进制赋值:char c3 = ‘\u0041’;(通过十六进制数41在字符集中所对应的字符赋值)
public class TestType4{
public static void main(String[] args){
char c1 = 'A'; //字符赋值,原生、基本的赋值方式(常用)
System.out.println(c1);
char c2 = 65;//整数赋值(十进制)
System.out.println(c2);
char c3 = '\u0041';//进制赋值(十六进制)
System.out.println(c3);
}
}
3.1.7 转义字符(1)
public class TestSign{
public static void main(String[] args){
char c1 = '\'';
System.out.println(c1);
System.out.println("\"");
System.out.println("Hello\tWorld");
System.out.println("Hello\nWorld");
System.out.println("\\");
System.out.println("u0041");
System.out.println("\u0041");
}
}
3.2 引用数据类型(字符串)
- String类型的字面取值:
- String str1 = ‘‘Hello’’;
- String str2 = ‘‘您好’’;
- String str3 = ‘‘Java Engineer’’;
- String str4 = ‘‘微服务架构师’’;
public class TestString{
public static void main(String[] args){
String str1 = "HelloWorld";
System.out.println(str1);
System.out.println("HelloWorld");
String str2 = "Hello Everyone";
System.out.println(str2);
}
}