千峰教育2218期2022.10.19日

复习
计算机
	 硬件和程序员的相关的核心内容
	 	CPU 内存 硬件 带宽(服务器考虑的带宽是上行带宽 上传速度)
	 软件相关
	 	操作系统
	 		平台,对硬件环境进行初始化操作,满足应用程序的使用场景和对应环境
	 		widowS MACOS Liunx UNIX 鸿蒙OS ios 
	 		android 不是一个严格意义上的一个操作系统
	 	应用程序
	 		针对用户使用的应用程序,手机 APP PC 网站(WEB APPlication)
	 操作
	 	图形化界面操作
	 		简单易学 对普通用户友好
	 	命令指令操作
	 		效率高 适用于服务器管理,程序员适用
	 		了解DOS命令
	 			dir cd mkdir red echo del cls exit * ↑↓
	 		掌握Liunx命令
Java
	历史:
		96年JDK1.0
		04年JDK1.5
		流行版本:
			JDK 8 11 17
	Java 专用名词
		JVM
			Java虚拟机,在不同的操作系统中,按照对应操作系统的JAva运行环境,相当于给予当前平台对应的JVM
			可以保证Java程序一处编译,处处执行,JVM的作用是解释Java代码给予CPU的执行指令
        JDK
			java开发工具集,里面包含Java开发的相关工具(运行工具 java编译工具 javac反编译工具)
			JDK包含jre
		JRE
			java运行环境,里面包含JVM和JVM所需的相关资源,提供JAVA程序的运行环境

public class FirstJava {
	public static void main(String[] args){
		System.out.println("你好");
	}
}
代码文件名称和class后的名称一致
编译代码
	javac
	javac FirstJava.java >当前工作目录得到FristJava.class字节码文件/二进制文件
执行代码
	java
	java FirstJava>直接利用.class字节码文件文件名称通过该java运行即可
	

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

1.计算机存储
1.1计算机存储常用数据单位
计算机当中最小的存储单位
	字节 Byte bit
	bit 比特 一个字节是8个bit位(二进制)
	100M 带宽==>100M 比特率 bit/s ==>12.5MB/s
	
	
常见的存储单位:
	Widows 操作系统存储单位之间的进制关系
		1024==>2^10
	1024Byte ==1KB
	1024KB   ==1MB
	1024MB 	 ==1GB
	1024GB   ==1TB
	1024TB   ==1PB
	1024PB   ==1EB
	
	
	2014年淘宝每天数据量50PB


硬件设备生产/macos操作系统  数据进制单位是1000。Widows 读取U盘/硬盘数据,没有对应标明容量Windows 数据内容到macOS系统变大

得数据者的天下!!!
1.2 计算机常见进制(了解)
生活中使用最多的是十进制!! 在实际的开发,产品设计中需要考虑的也是十进制,做开发实际价值/生活价值!!

涉及到开发中使用较多的进制
进制基数范围进制关系
十进制0~9逢十进一
二进制0.1逢二进一
八进制0~7逢八进一
十六进制09,AF逢G()16进一
数据展示效果
	八进制
		程序员看着方便的额要求:数据0开头
			0777 0775 0755 0555
		[注意]存在特殊情况下,省略开头0的情况!!!
		40==>040
		[使用场景]
			Liunx权限管理

	十六进制
	 	程序员看着方便的要求:数据0X开头
	 		0x1234 0xabcd 0xABCD
	 	[注意]十六进制中不区分大小写
	 	[适用场景]
	 		计算机内存地址

涉及到进制转换问题
	一律采用计算器,Windows or macOS 计算器
		程序员/编程型
2.常量【重点】
2.1生活中的常量
数值:
	光速,π,重力加速度,
文字:
	你 我 他 A B C D 1 2 3 4
文本:
	"北国风光,千里冰封,万里雪飘...."

2.2针对于开发需求常量进行分类
整数:
	10 100 1000 10000
	-10 -100 -1000
	1 2 3==>数值
小数(浮点数):
	3.14  0.618 11.11 12.12 9.8
文字/字符:
	Java 代码规定
		字符常量是英文单引号包含的单个元素
		'A' ‘’ '你' 'w' 
		'1' '2' '3'==>数字字符

字符串:
	Java代码规范
		字符串常量是英文双引号包含的所有内容
		"北国风光,千里冰封,万里雪飘....."
		
真假关系/布尔类型:
	ture  真
	false 假
	
小点子:
	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(-10);
		System.out.println();
		
		/*浮点数常量*/
		System.out.println(3.14);
		System.out.println(5.5);
		System.out.println();
		
		/*字符常量*/
		System.out.println('我');
		System.out.println('1');
		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.41编码集问题
编码集
	每一个文字都有一个对应的图片,每一个图片进行编号,计算机会根据编码集来处理当前信息中的编号,从而找到对应的文字图片。
	
开发中常用编码集:
	UTF-8 国际编码 支持多国文字 (中文 英文 日语 阿拉伯 俄语 朝鲜语)后期开发使用最多。
	GBK 新国标 支持中文简体字,以及中国所有少数民族文字。(Windows中文系统默认编码集)
	BIG5中文繁体字编码集,主要流行于中国太晚,中国香港,中国澳门,新加坡。
	ASCII编码,美国信息交互标准歇会制定的规范编码,主要包含英文,数字,标点符号。
		要求所有的编码必须首先支持ASCII

要求:
	1.使用字符有且只允许使用字符本身,采用英文单引号包含【单个元素】的方式处理字符内容。
		例如:'我' '你' '他'
	2.绝对不允许使用编码值来表示字符信息,可视化极差,同时类型不一致!!
	3.编码集问题主要出现在中文乱码中,保证在开发中使用的编码集一致!!!后台Java
	后期前段UTF-8后台Java UTF-8 数据库UTF-8


ASCII编码集补充说明:
	1.0~31是不可见字符,没有视觉效果。
	2.数字字符0~9顺序和键盘不同
	3.大写字母顺序是A~Z 小写字母是a~z
	4.大写字母的编码值小于小写字母
	5.大写字母和小写字母之间有其他标点符号内容
	
后期功能:
	验证码比对全部转大写字母比较,因为大写字母编码值小于小写字母,节省一定的空间。
	

The decimal set:

2.42转义字符【仅了解】
开发中有些字符因为已经被赋予特定的含义
	例如:""字符串标记 ''字符串标记
	\"\'可以将原本特定含义在字符转换为字符本身,不具备任何的含义!!!

两个较为常用的转义字符
	\n 换行回车
	\t tab 键 制表符
	
\算不算特定含义字符???
	需要在字符串中展示一个\ 怎么办??
	\\
	需要在字符串中展示一个\\怎么办??
	\\\\
【注意】
	转义字符有且只有处理\转义字符之后的第一个字符
2.43只可学会,不得使用
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)卡车数量(吨) 货轮(万吨)


	变量名:
		约定俗成, 见名如意,通俗易懂。
	
	=:
		赋值,赋值号,
			将赋值号右侧的数据,赋值给左侧的【变量】
			
	初始化数据:
		根据当前数据类型情况,以及目前的代码运行需求,给予变量在定义阶段的初始化数据。
		魂斗罗 超级玛丽 冒险岛 开局三次机会!!
		CSGO CF 人物出生血量100%
		雪碧 可乐 3.5RMB 500ML
			
3.3数据类型【重点重点】
3.31整数类型/整型

根据不同的数据存储范围,数据存储需求,整型在Java中分为4个情况

byte,short,int,long

数据类型占用空间大小数据存储范围
byte1字节-128~127
short2字节-32768~32767
int4字节-231~231-1
long8字节-263~263-1
3.32 小数/浮点数

针对于小数/浮点数情况,同时考虑精度范围和数据存储范围,浮点数分为两种情况

单精度浮点型float

双精度浮点型double

要求明确float占用空间小于double同时float数据范围小于double

数据类型占用内存空间大小数据存储范围
float4字节10^38
double8字节10^308
3.33 字符类型

用于,描述代码中使用的字符常量存储的变量内容

明确字符类型char可以存储中文

数据类型占用内存空间大小数据存储范围
char2字节可以存储中文
3.34 布尔类型

真假关系 true of false

明确布尔类型 boolean 数据范围有且只有true false

数据类型占用内存空间大小数据存储范围
boolean视情况而定true false
3.4变量定义演示
3.41整数型变量定义演示
// 整型变量定义演示
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 = 50;
		long num4 = 100;
		
		System.out.println(num1);
		System.out.println(num2);
		System.out.println(num3);
		System.out.println(num4);
		
		System.out.println();
		
		// 定义后的变量可以通过变量名直接使用
		// 变量存储数据内容可以修改的!!!
		
		num1 = 50; // 给予byte类型变量num1赋值新的数据50
		num2 = 180;
		num3 = 32768;
		num4 = 52;
		
		System.out.println(num1); // 展示 numl 变量存储的数据类型
		System.out.println(num2);
		System.out.println(num3);
		System.out.println(num4);

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

	}
}
3.43字符类型变量操作
//字符类型变量操作
public class Demo5 {
    public static void main(String[] args) {
        /*
        变量定义的格式:
        	数据类型 变量名 = 初始化数据;
        字符类型
        	char
        字符类型变量常用的名称
        	ch
        【重点强调】
        	字符类型数据操作有且只有使用字符本身,绝对不允许使用编码值
        	严格遵从【数据类型一致化要求】
        */
        char ch1 = 'A';
        char ch2 = '中';
        
        System.out.println(ch1);
        System.out.println(ch2);
        System.out.println();
        
        ch1 = '中';
        ch2 = '国';
        
        // 字符串常量是英文单引号包含的单个元素
        // ch1 = '中国';
        // ch1 是【字符类型】,双引号报的内容是【字符串类型】,类型不一致,无法赋值
        // ch1 = "中国";
        	
        System.out.println("ch1");
        System.out.println("ch2");
    } 
}
3.44布尔类型变量操作
// 布尔类型变量操作演示
public class Demo6{
    public static void main(String[] args) {
        /*
        变量定义的格式:
        	数据类型 变量名 = 初始化数据;
        布尔类型
        	boolean
        布尔类型常用变量名称
        	ret 结果 result 简拼
        	flag 标记
        */
        boolean ret1 = true;
        boolean ret2 = false;
        
        System.out.println(ret1);
        System.out.println(ret2);
        System.out.println();
        
        ret1 = false;
        ret2 = true;
        
        System.out.println(ret1);
        System.out.println(ret2);
    }
}
3.5变量定义常见问题
3.51 float类型变量常量赋值问题

Demo4 . java

Line 12: float num1 =3.5;
Demo4.java:5: 错误: 不兼容的类型: 从double转换到float可能会有损失
                float num1 = 3.5;
计算机数据存储原则:
	计算机存储数据优先考虑的是数据的精度和完整性。3.5作为浮点类型数据,计算机考虑到数据的精度和完整性情况,常量3.5会采用double类型作为数据类型。double占用数据空间 8 字节。
	double八个字节float四个字节 doublefloat更加精准和完整。
	相当于使用了一个double类型的数据3.5占用8字节内存数据空间,赋值给一个float类型变量,而float类型占用内存空间为4字节,并且float浮点类型数据精度不double
	计算机在赋值操作中会给予错误提示,double类型数据赋值给float类型数据会导致数据精度丢失,不允许!!!!
    //错误演示代码
public class Demo7 {
	public static void main(String[] args) {
		double num = 101000000000000000000000000000000000000000F;

		System.out.println(num);
	}
    
D:\AQF\notepad\project\1019>javac Demo7.java
Demo7.java:4: 错误: 浮点数过大
                double num = 101000000000000000000000000000000000000000F;
 
 一个错误
     
【解决方案】
	明确告知计算机,当前数据为float类型数据。
     	float num1 = 3.5F;
    	注意F必须大写(规定/f也不会错),告知编译器当前3.5float类型,保证【数据类型一致化】
	
	
3.52 Java中的值未赋值不能使用

变量定义之后,没有进行赋值操作,不可以参与除复制操作之外的其他内容

//错误演示代码
public calss Demo7 {
    public static void main(String[] args) {
        // 定义一个 int 类型的变量 num
        int num;
        System.out.println(num);
        
        /*
        Demo7.java:6: 错误: 可能尚未初始化变量num
        	System.out.println(num);
                     		   ^
        一个错误
        */
        
    }
}
3.53 Java中变量未定义不能使用

Java规定变量如果没有声明,没有定义,无法使用,主义提示内容【找不到符号】

相当于 做饭没有买香菜 做饭的时候就不能放香菜

主要原因

1.变量真的没有定义,你非要使用

2.变量真的定义了,但是你拼写了【很常见】

//错误示例代码
public class Demo7{
    public static void main(String[] args) {
        System.out.println(num);
        /*
        */
       
  
    }
}
//错误演示代码
public class Demo7{
    public static void main(String[] args) {
        int num = 10;
        System.out.println(nmu);
        /*
        */
        
    }
}
3.54【提示】字符类型常量有且只允许使用字符本身
3.55 long 类赋值常量建议

严格遵守数据类型一致化要求!!!

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

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

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

//正确情况演示
public class Demo7{
    public static void main(String[] args) {
        // num1 和 num2 都是long类型变量
        // 对于计算机而言,整数默认类型为 int 类型
        long num1 = 10;
        // 10L 明确的告知编译器当前常量数据类型为long类型
        long num2 = 10L;
        
        System.out.println(num1);
        System.out.println(num2);
          
    }
}


4.作业
1.整理笔记
2.所有案例整理三遍

ntln(nmu);
/*
*/

}

}


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

###### 3.55 long 类赋值常量建议

> 严格遵守数据类型一致化要求!!!
>
> 在给予long类型变量赋值操作时,对应的常量建议使用L明确告知编译器,当前变量数据类型为long类型
>
> 保证数据类型一致化操作,提高代码效率
>
> 要求必须使用大写L,小写l容易导致阅读不便

```java
//正确情况演示
public class Demo7{
    public static void main(String[] args) {
        // num1 和 num2 都是long类型变量
        // 对于计算机而言,整数默认类型为 int 类型
        long num1 = 10;
        // 10L 明确的告知编译器当前常量数据类型为long类型
        long num2 = 10L;
        
        System.out.println(num1);
        System.out.println(num2);
          
    }
}


4.作业
1.整理笔记
2.所有案例整理三遍
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值