Java第二天

复习
计算机
	 硬件和程序员相关的核心内存
	 	cpu 内存 硬盘 带宽(服务器考虑的带宽是上行带宽)
	 软件相关
	 	操作系统
	 		平台,对硬件环境进行初始化操作,满足应用程序的使用场景和对应环境 
	 		windows ,mcaos , linux unix 鸿蒙os ios
	 		Android 不是一个严格意义的操作系统
	 	应用程序
	 		针对于用户使用的应用程序,手机app,pc端软件,网站(web Application)
	 	操作
	 		图形化界面操作
	 			简单,易学,对应普通用户友好
	 		命令指令操作
	 			效率高,适用于服务器管理,程序员使用
	 			了解DOC命令
	 				dir,mkdir,rd, echo, del, cls,exit
Java
     历史:
     		96年 JDK 1.0
     		04年 JDK 1.5
     		流行版本:
     			JDK 8 11 17
     		Java专用名词
     			JVM
     				Java虚拟机,在不同的操作系统中,安装对应操作系统的Java运行环境,相当于给予当前平台  					   对应的JVM可以保证Java程序一处编译,处处执行,JVM的作用是解释Java代码给予CPU执行						指令。
     			JDK
     				Java开发工具集,里面包含Java相关工具(运行工具 java翻译工具 javac反编译工具)
     				java开发工具集运行需要JRE支持
     				JDK包含 JRE
     			JRE
     				JRE运行环境,里面包含JVM和JVM所需相关资源,提供java程序的运行环境
|代码文件名称要与class之后的名称一致
|当前文件的保存名称为:FirstJava.java
public class FirstJava {
	public static void main(String[] args) {
		System.out.println("Java 第一行代码");
	}
}
编一格式
	javac 文件名.java
		将Java文件编译得到对应的.class字节码文件/二进制文件。
	运行格式:
 	java .class字节码文件名
 		直接利用.class字节码文件文件名称通过该java执行

第二天

计算机存储 ,数据类型,常量和变量

1.计算机存储
1.1计算存储常用数据单位
计算机当中最小的存储单位
			字节Byte  
				bit 比特 一个字节是8个比特位(二进制)
				100M 带宽 == > 100M 比特率 bit/s == > 12.5MB/s
			常见的存储单位:
				windows 操作系统存储单位之间的进制关系
					1024 ==> 2^10
				1024Byte ==> 1 KB
				1024 KB  ==> 1 MB
				1024 MB  ==> 1 GB
				1024 GB  ==> 1 TB
			    1024 TB  ==> 1 EB
			    104  EB  ==> 1 PB
			    
			    2014 年淘宝 ==> 《淘宝这十年》 2014年淘宝每天的数据量 50PB
硬件设备生产/macos 操作系统,数据进制单位是1000.Windows读取U盘/硬盘数据。没有对应表明容量windows 数据内容刀macos 系统变大
得数据者得天下!!!
1.2计算机常见进制【仅了解】
生活中使用最多的进制是十进制!!在实际的开发,产品设计中需要考虑的也是十进制,
做开发考虑的是实际价值/生活价值!!


涉及到开发中使用较多的进制
进制基数范围进制关系
十进制0-9逢十进一
二进制0,1逢二进一
八进制0-7逢八进一
十六进制0-9,A-F逢G(16)进一
数据显示效果
			八进制

​					程序员看着方便的要求 : 数据 0开头

​							0777  0775 0755 0555

​					【注意】在特殊情况下,省略开头0的情况!!

​								40 ==>  040
					【适用场景】
								Linux权限管理

​				十六进制

​					 	程序员看着方便要求:数据0x开头

​								0x123	0xabcd  0xABCD

​						【注意】十六进制不区分大小写!!
						【适用场景】
								计算机内存地址
				涉及到进制转换问题
						一律采用计算器windows or macos 计算器
						程序员/编程型
2.常量【重点】
2.1生活中的常用的常量
数值:
	光速,Π,重力加速度
文字:
	你 我 他 
	A B C D
	1 2 3 4
文本:
	诗词,歌赋
	"北国风光,万里雪飘。。。。。"
2.2针对开发需求常量进行分类
整数:
	10  100  60 
	-10  -50 -100
	
小数/浮点数
	3.14  0.61  11.11 12.12
文字/字符:
	Java 代码规定
		Java字符常量是单引号包含的单个元素
		'A'   'B'  'C' '你'
真假关系/布尔类型:	
		true 真
		false 错

字符串:
	 Java 代码规范:
	 		字符串常量是引文双引号包含的所用内容
	 "北国风光,万里雪飘。。。"
	 
小点子:
	1.数字字符常量和数值的区别
		1 2 3 ==> 数值
		'1'  '2'  '3' ==> 数字字符
	2.常量是在Java代码运行过程不会发生改变的量
2.3常量代码演示
//Java中常量演示
public class Demo1{
	public static void main(String [] args){
		
		/*整数常量*/
		System.out.println(10);
		System.out.println(100);
		System.out.println();
		
		/*浮点常量*/
		System.out.println(3.12);
		System.out.println(5.5);
		System.out.println();
		
		/* 字符常量 */
		System.out.println('A');
		System.out.println('1');
		System.out.println();
		
		/*字符串常量*/
		System.out.println("你好啊,java");
		System.out.println("注意代码规范!!!");
		System.out.println("   * ");
		System.out.println("  *** ");
		System.out.println(" ***** ");
		System.out.println("******* ");
		System.out.println();
		
		/* 真假关系/布尔类型*/
		System.out.println(true);
		System.out.println(false);
		System.out.println();
	}
}
2.4字符串常见补充说明
2.4.1编码集问题
编码集:
	每一个文字都有一个对应的托i按,每一个图片进行编号,计算机会根据编码集来处理当前信息中的编号,从而找到对应的文字图片,
	
开发中常用编码集:
	utf-8 国际编码,支持多国文字(中文,英语,阿拉伯,日语,朝鲜语。。。)后期开发使用最多。
	GBK 新国标支持中文简体字,以及中国所有少数民族文字。【windows中文系统默认编码集】。
	BIG5 中文繁体字编码集,主要流行于中国台湾,中国香港,中国澳门,新加坡
	ASCII 编码,美国信息交互标准协会指定的规范编码,主要包含英文,数字,标点符号,
			要求所有的编码必须首先支持ASCII
			
要求:
	1.使用字符有且只允许使用字符本身,采用英文单引号包含【单个元素】的方式处理字符内容,
		例如:'你' '我' '他'
	2.绝对不允许使用编码值来表示字符信息,可视化极差,同时类型不一致!!
	
	3.编码集问题主要出现在中文乱码中,保证在开发中使用编码集一致!!
	后期前端utf-8 后台utf-8 数据库utf-8
	
ASCII编码集补充说明:
	1. 0-31 是不可见字符,没有视觉效果
	2. 数字字符0-9顺序和键盘不同
	3. 大写字母顺序是A-Z,小写字母是a-z
	4. 大写字母的编码值小于小写字母
	5. 大学字母和小写字母之间有其他标点符号内容
后期功能:
	验证码比对全部转换位大写字母比较,因为大小字母编码值小于小写字母,节省一定的空间。
The decimal set:

​ 十进制:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ExDJc2D3-1666174444507)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221019141218842.png)]

​ 八进制:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V1q5keD6-1666174444509)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221019142545198.png)]

2.4.2转义字符【仅了解】
开发中有些字母因为开发需求已经被赋予了特定的含义,
	例如:""字符串标记''字符标记
	\' \" 可以将根本特定含义在字符转换字符本身,不具备任何意义!!
	
两个较为常用的转义字符
	\n 换行 回车
	\t tab 键 制表符
\ 算不算特定含义字符???
	需要在字符串中展示1个\怎么办?
		\\
	需要在字符串中展示1个\\怎么办??
		\\\\
	[注意]
	转义字符有且只能处理\转义符号之后的第一个字符
2.4.3只可学会,不得使用
2015
请问:
	\40是什么???
	结果是空格!!
	1.\转义字符标记之后的数值默认为8进制
	2.8 进制数据标记 0 可以省略
	3.\40 ==> 十进制编号为 32 的字符 ==> space空格
	
要求:
	1.不能用来面试其他人!!
	2.如果对方不讲道德,电话号给你!!
	3.可以用于对暗号!!
3.变量【重点】
3.1生活中哪些是变量
生活中常见的变量:
	体重 温度 发量 余额 时间 工资 油价 电量
关注点:
	1.约定俗成,见名知意
	2.单位,数据范围,合理的数据单位
	3.容器的概念
	
变量需要在开发中提供
	数据,信息,内容
3.2 Java 中定义变量的格式
格式:
	数据类型 变量名 = 初始化数据;
	
解释:
	数据类型:
		表示当前变量数据存储对应的数据类型,数据容量范围,数据的描述形式。
		 		温度 == > 摄氏度
		 		水杯 == > 小(ml) 大(L)
		 		重量 == > 人(kg) 卡车载重(吨) 货轮(万吨)
		 		
		 变量名:
		 	约定俗成,见名知意,通俗易懂
		 	
		 =:
		 	赋值,赋值号,
		 		将赋值号右侧的数据,赋值给左侧的【变量】
		 
		 初始化数据:
		 	相当于当前数据类型情况,以及目前的代码运行需求,给予变量在定义阶段的初始化数值。
		 	举例:
		 		魂斗罗,超级玛丽 冒险岛
		 		PUBG CF CSGO 人物出生血量 100%
		 		雪碧 可乐3.5RMB 500ML
3.3 基本数据类型【重点重点】
3.3.1整数类型/整型
|根据不同的数据存储范围,数据存储需求,整型在Java中分为4个情况
|byte short int long
数据类型占用空间大小数据存储范围
byte1字节-128~127
short2字节-32768~32767
int4字节-231~231-1
long8字节-263~263-1
3.3.2小数/浮点数
|针对于小数/浮点数情况,同时考虑精度范围和数据存储范围,浮点数分为两种情况
|单精度浮点型float
|双精度浮点型double
|要求明确float占用空间小于double同时float数据范围小于double
数据类型占用空间大小数据存储范围
float4字节10^38
double8字节10^308
3.3.3字符类型
|用于描述代码中使用的字符常量存储变量内容
|明确字符类型char可以存储中文
数据类型占用内存空间大小数据存储范围
char2字节可以存储中文
3.3.4布尔类型
|真假关系 true or false
|明确布尔类型boolean 数据范围有且只有 true false
数据类型占用内存空间大小数据存储范围
boolean2字节ture false
3.4变量定义演示
3.4.1整数型变量操作
//整型变量定义演示
public class Demo3{
	public static void main(String [] args){
		/*
		变量定义格式:
			数据类型  变量名 = 初始化数据;
		数据类型
			byte  short  int long 
		数值变量一般会使用
			number = 简拼 num
		*/
		byte num1 = 10;//定义一个变量 num1 数据类型为 byte 类型,初始化数据存储 10
		short num2 = 20;
		int num3 = 30;
		long num4 = 100;
	
		System.out.println(num1);//展示 num1 变量存储的数据类型
		System.out.println(num2);
		System.out.println(num3);
		System.out.println(num4);
		System.out.println("-------------------------------------");
		//定义之后的变量可以通过变量名直接使用
		//变量存储数据内容是可以修改的!!
		num1 = 50;//给予byte 类型变量 num1 赋值新的数据 50
		num2 = 100;
		num3 = 200;
		num4 = 500;
	
		System.out.println(num1);
		System.out.println(num2);
		System.out.println(num3);
		System.out.println(num4);
	}


}
3.4.2浮点型变量操作
//浮点型变量操作演示
public class Demo4 {
	public static void main(String []args) {
		/*
		变量定义格式:
			数据类型  变量名 = 初始化数据;
		数据类型
			float  double
		浮点型变量一般会使用
			number = 简拼 num
		*/
		float  num1 = 3.5F;
		double num2 = 9.9;
		System.out.println(num1);
		System.out.println(num2);
		System.out.println();
		System.out.println();
		
		
		num1 = 20.8F;
		num2 = 55.9;
		
		System.out.println(num1);
		System.out.println(num2);
	
	}

}
3.4.3字符类型变量操作
//字符类型变量操作
public class Demo5 {
	public static void mian(String []args) {
	/*
		变量定义格式:
			数据类型  变量名 = 初始化数据;
		数据类型
			char
		字符变量一般会使用
			ch	
		【重点强调】
			字符类型数据操作有且只能使用字符本身,绝对不允许使用编码值
			严格遵从【数据类型一致化要求】
		*/
		char  ch1 = 'A';
		char  ch2 = '中';
		
		System.out.println(ch1);
		System.out.println(ch2);
		System.out.println();
		
		char  ch1 = '豫';
		char  ch2 = '国';
		
		System.out.println(ch1);
		System.out.println(ch2);
		System.out.println();
	
	}

}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3B3pYdZ0-1666174444511)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221019173717864.png)]

3.4.4布尔类型变量操作
//布尔类型变量操作演示
public class Demo6 {
	public static void main(String []args) {
		/*
		变量定义格式:
			数据类型  变量名 = 初始化数据;
		布尔类型
			boolean
		布尔变量一般会使用
			ret 结果 result 简拼
			flag 标记
			
		*/
		boolean ret1 = true;
		System.out.println(ret1);
		System.out.println();
		
		ret1 = false;
		System.out.println(ret1);
	}
}
3.5变量定义常见问题
3.5.1 float类型变量常量赋值问题

|Demo4.java

Demo4.java:12: 错误: 不兼容的类型: 从double转换到float可能会有损失
                float  num1 = 3.5;
                              ^
1 个错误
计算机数据存储原则:
	计算机存储数据优先考虑的是数据的精度和完整型。3.5作为浮点型数据,计算机考虑到数据的精度和完整性情况,常量3.5 会采用double 类型作为数据类型。double 占用数据空间8字节。
	相当于使用一个double 类型的数据3.5 占用8字节内存数据空间,赋值给一个float 类型变量,而float类型只能用内存空间为4字节,并且float浮点类型数据精度不如double。
	计算机在赋值操作中会给予错误提示,double 类型数据赋值给float类型数据会导致数据精度丢失,不允许!!!
	
【解决方案】
	明确告知计算机,当前数据为float类型数据
		float num1 = 3.5F;
		注意F必须大写,告知编译器当前3.5是float类型,保证【数据类型一致化】
3.5.2 java中的变量未赋值不能使用
|变量定义之后,没有进行赋值操作,不可以参与赋值操作之外的其他内容
//错误变量操作演示
public class Demo6 {
	public static void main(String []args) {
		int num;
		System.out.println(num);
	/*
	Demo6.java:7: 错误: 可能尚未初始化变量num
                System.out.println(num);
                                   ^
	1 个错误
		*/	
	}
}
3.5.3Java中未定义的不能使用
|Java中规定如果变量没有声明,没有定义,无法使用。
|主要原因:
1.未定义 
2.定义了,用的时候拼写错误
3.5.4【提示】字符类型常量有且只允许使用字符本身
3.5.6 long类型赋值常量建议
|严格遵守数据类型一致化原则

|在给予long 类型变量赋值操作时,对应的常量建议使用L明确告知编译器,当前变量数据类型为long类型

|保证数据类型一致化操作,提高代码效率

|要求必须大写L,小写l 容易导致阅读不便

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DKmhskmC-1666174444512)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20221019180148757.png)]

4.作业
1.作业笔记
2.所有案例联系三次

d main(String []args) {
int num;
System.out.println(num);
/*
Demo6.java:7: 错误: 可能尚未初始化变量num
System.out.println(num);
^
1 个错误
*/
}
}


###### 3.5.3Java中未定义的不能使用

###### |Java中规定如果变量没有声明,没有定义,无法使用。

###### |主要原因:	

1.未定义
2.定义了,用的时候拼写错误


###### 3.5.4【提示】字符类型常量有且只允许使用字符本身

###### 3.5.6 long类型赋值常量建议

###### |严格遵守数据类型一致化原则

|在给予long 类型变量赋值操作时,对应的常量建议使用L明确告知编译器,当前变量数据类型为long类型

|保证数据类型一致化操作,提高代码效率

|要求必须大写L,小写l 容易导致阅读不便

[外链图片转存中...(img-DKmhskmC-1666174444512)]


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值