0基础学Java(2)
1. 数据存储
1.1 计算机中常用的数据存储单位
计算机最小存储单位 byte 字节
数据存储进制单位:
Windows操作系统 1024
1024 Byte ==> 1KB
1024 KB ==> 1 MB
1024 MB ==> 1 GB
1024 GB ==> 1 TB
1024 TB ==> 1 PB
1024 PB ==> 1 EB
硬件实际生产 和 macOS 系统中,进制单位 1000
1.2 数据表示的进制关系【了解】
生活中的常见进制:
十进制,十二进制,二十四进制, 六十进制
开发中需要[了解]的进制
进制 | 基数范围 | 进位关系 |
十进制 | 0~9 | 逢十进一 |
二进制 | 0,1 | 逢二进一 |
八进制 | 0~7 | 逢八进一 |
十六进制 | 0~19,A~F | 逢G(十六)进一 |
八进制:
数据展示要求,开头为 0
0777 0755 0711
但是 0 在特殊情况下可以省略十六进制:
数据展示要求,开头为 0x
0xABCD 0xabcd 这两个数据完全一致,十六进制不区分大小写!
0xFFFF 0x1234所有的进制转换,全部交给计算器处理,提高效率。
2. 常量
2.1 生活中的常量
数值:
整数: 10 20 30
小数(浮点数): 3.14 0.618 11.11 12.12
文字:
你 我 他
A B C
1 2 3
文本:
"北国风光,千里冰封,万里雪飘,望长城内外,惟余莽莽...."常量就是在生活中不可以改变的内容。
2.2 开发中对于常量分类
整数:
1 2 3 4 5 -1 -2 -3 -4 -5 0
小数(浮点数):
3.14 0.618 9.8 1998.99真假关系(布尔类型):
true false字符:
[重点] Java中的字符是使用英文单引号包含的单个元素
'A' 'B' 'C' '1' '你'
字符串:
[重点] Java中的字符串是使用英文双引号包含的所有内容
"老马烧烤" "淼庄地锅鸡" "新疆拉条烧烤城"
// 常量演示
class Demo1 {public static void main(String[] args) {// 整数System.out.println(10);System.out.println(20);System.out.println(-10);System.out.println(-20);// 浮点数System.out.println(3.14);System.out.println(0.618);// 布尔类型System.out.println(true);System.out.println(false);// 字符类型System.out.println('A');System.out.println('B');System.out.println('C');// 字符串System.out.println("老马烧烤,京广路保全街交叉口向东350米路北");}
}
2.3 字符常量
2.3.1 编码集
常用编码集:
GBK 新国标,包含中文简体字和所有少数民族文字
GB2312 老国标,包含中文简体字和一部分少数民族文字
BIG5 中文繁体字编码集,主要用于 中国台湾省,中国香港,中国澳门,新加坡
UTF-8 万国码,目前开发中使用最多编码集
ASCII 美丽国XXX标准协会制定编码开发使用字符要求:
1. 字符有且只允许使用字符本身,不允许使用对应编码值。【数据类型一致化】
2. 编码集中 0 ~ 31 编码为不可见字符
3. 大写字母编码值小于小写字母,并且大写字母和小写字母编码中间相隔其他字符
4. 数字字符是从 0 ~ 9
5. 编码值不允许直接使用!!!
2.3.3 面试题
请问:
\40 是什么???
知识点:
1. \ 之后的数值要求为 八 进制
2. 八 进制在 \ 之后可以省略标记 0
3. \40 是对应编码为 32 的 sp 空格
3.变量
3.1 Java中定义变量的格式
基本格式:
数据类型 变量名 = 初始化数据;数据类型:
明确当前变量的数据类型,开发中需要选择合适的数据类型。
变量名:
见名知意,按照规范定义,并且在一定范围以内唯一
=:
将赋值号右侧的数据,赋值给左侧的【变量】
初始化数据:
根据程序所需,数据类型所需,选择合适的初始化数据进行赋值操作。
3.2 基本数据类型【重点】
3.2.1 整型
数据类型 | 占用内存空间大小 | 数据存储范围 |
byte | 1字节(8bit) | -128 ~ 127 |
short | 2字节 (16bit) | -32768 ~ 32767 |
int | 4字节 (32bit) | -2^31 ~ 2^31-1 |
long | 8字节 (64bit) | -2^63 ~ 2^63-1 |
3.2.2 浮点类型
数据类型 | 占用内存空间大小 | 数据存储范围 |
float | 4字节 (32bit) | 10^38 |
double | 8字节 (64bit) | 10^308 |
3.2.3 布尔类型
数据类型 | 占用内存空间大小 | 数据存储范围 |
boolean | 视情况而定 | true false |
3.2.4 字符类型
数据类型 | 占用内存空间大小 | 数据存储范围 |
char | 2字节(16bit) | 可以存储中文 |
3.3 定义变量
// 变量定义演示
class Demo3 {public static void main(String[] args) {/* 整型变量定义 基本格式:数据类型 变量名 = 初始化数据;*/byte byteNumber = 10;short shortNumber = 20;int intNumber = 30;long longNumber = 500L;System.out.println(byteNumber);System.out.println(shortNumber);System.out.println(intNumber);System.out.println(longNumber);// 浮点型变量定义float floatNumber = 3.14F;double doubleNumber = 3.14;System.out.println(floatNumber);System.out.println(doubleNumber);/* 字符类型变量定义【强调】字符类型有且只允许使用字符本身,不允许操作编码值ch ==> character 字符*/char ch1 = 'A';char ch2 = '你';System.out.println(ch1);System.out.println(ch2);/*布尔类型变量定义ret ==> result 结果*/boolean ret1 = true;boolean ret2 = false;System.out.println(ret1);System.out.println(ret2);}
}
3.4 变量定义问题
3.4.1 float 类型变量赋值问题
在计算机中为了保证数据类型精度和存储的完整性,小数(浮点数)常量默认采用的数据类型存储方式为 double。使用 double 类型的常量赋值一个 float 类型变量,会导致数据精度丢失同时数据存储完整性也存在影响。
解决方案:
明确告知计算机当前常量为 float 类型。在常量之后加上【大写 F】
float floatNumber = 3.14F;
3.4.2 long 类型变量赋值建议
Java 代码中整数默认选择数据类型为 int 类型,我们建议在给予 long 类型变量赋值的过程中,选择常量标记【大写 L】。明确告知计算机当前常量为 long 类型。
案例:
long longNumber = 500L;
3.4.3 变量未赋值不能使用
Java 中规定,变量在未赋值的情况下,不可以参与除赋值之外的其他语句操作。
3.4.4 字符类型常量有且只允许使用字符本身
4. 标识符命名规范
标识符有哪些内容
变量名,方法名,类名,接口名,程序员自己定义的名字。1. AJCG规定,标识符有且只可以使用 英文字母(A ~ Z a ~ z), 数字(0 ~ 9),以及唯一可以使用的标点符号下划线(_)
2. AJCG规定,标识符要求英文字母开头,不允许其他字符开头
3. AJCG规定,标识符严格区分大小写,大写和小写含义不同。
4. AJCG规定,标识符没有严格的长度限制,会根据实际情况限制标识符长度。
5. AJCG规定,标识符要求做到【见名知意,动宾结构】
例如:
错误案例:
int a,b,c,d,e,f,g;
正确案例:
studentAge studentName studentScore studentGender
getStudentAge setStudentAge
6. AJCG规定,推荐采用驼峰命名法和下划线命名法
驼峰命名法
小驼峰
要求首字母小写,之后的每一个单词首字母大写
适用于: 变量名,方法名
iPhone iMac iTouch iPod iPad
studentAge studentName studentScore studentGender
getStudentAge setStudentAge
大驼峰
要求所有单词首字母大写
适用于: 类名,接口名
Demo1 Demo2 Demo3
FirstJava BufferedOutStream ArrayIndexOutOfBoundsException
下划线命名法
所有字母全部大写,使用下划线分割
MAX_VALUE MIN_VALUE MAX_ARRAY_SIZE DEFAULT_CAPACITY
NORMAL_PRIORITY
7.AJCG规定,已经被 Java 占用的关键字和保留字不得用于自定义标识符使用。
变色都不能用!!!
int int = 10; 不允许!!!
0基础学Java(2)相关推荐
- 0基础学Java需要多久?
0基础学Java需要多久?黑马程序员零基础系统学习的Java课程课时348小时,至少要学习5-6个月的时间,不同的课程大纲课时也不一样,具体课看课程的详情:Java基础课程课时在5-20小时不等,根据 ...
- 【0基础学java】教学日志:javaSE-面向对象6-面向对象前4章上机作业点评,主要涉及继承、封装、多态三个章节的内容
目录 一.面向对象第一章上机作业参考答案(略) 二.面向对象第二章上机作业参考答案: 三.面向对象第三章上机作业参考答案: 1.上机练习1已在第三章博客中编写,请参考: 2.上机练习2 四.面向对象第 ...
- 0基础学java有多难?自学Java和参加培训学Java的难易度对比分析!
在一些知识问答平台上,我看到有很多在问"0基础学java有多难",如果你想0基础自学Java那可能会比较困难,但是如果选择报培训班进行学习,即便是0基础,学Java其实也并不难.所 ...
- 0基础学java可行吗_零基础可以学习JAVA吗?
肯定是可以学的,每一个人做每一件事都是从0基础开始的,他们并不是生下来就会Java,会编程,都是通过后天的努力说得到的技能 你只需要找对方法,找对带你的人,你就可以学好 学习Java的方式有这几种: ...
- 【0基础学java】教学日志:javaSE-面向对象6-接口、面向接口编程、内部类
目录 本章概述: 一.为什么使用接口 1.Door.java 2.DoorBell.java 3.Lock.ja 二.接口的基本使用 1.Lock.java 2.LockDoor.java 3.Tes ...
- 0基础学java培训_零基础可以学习java课程么?零基础java培训需要多久?
零基础可以学习java课程么? 第一.兴趣爱好是重要,总体目标很重要 在你学习培训java以前,一定要清晰自身对java是不是确实很感兴趣,還是一时头昏脑涨.终究学习培训java不仅要把握技术性,也要 ...
- 【0基础学java】教学日志:项目实战-坦克大战-3
本章概述:本章主要讲了 1.定义坦克方向的enum,根据按键状态确定坦克方向,根据坦克方向确定坦克位移. 2.抽象出坦克类,封装相应的属性和方法,在tankFrame中直接调用. 3.添加坦克静止的处 ...
- 【0基础学java】教学日志:javaSE--Stream API
本章概述:本章主要讲了Stream特性,Stream运行机制,Stream的创建,Stream常用API,以及Stream API在实际应用开发中的作用 目录 本章概述: 一.annotation 1 ...
- 成都天瑞地安:零基础学Java最快捷的7个计划
0基础学Java,只要方法得当,就有机会学好Java开发.学Java就像交朋友一样,从陌生到熟悉再到死党,随着学习的深入,你会发现Java并不是想象的那么枯燥和困难,甚至有种妙不可言的乐趣. 1.透彻 ...
- [零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](1)
MIS信息管理系统实战开发之使用MySQL实现保存 开发背景 ID.姓名.年龄为公共信息,而学生有成绩,工人有工资 定义一个抽象类Person(ID.姓名.年龄),学生是其子类,有成绩,工人是其子类有 ...
最新文章
- hadoop centos 安装
- jsp中的basePath和path (绝对路径 相对路径)
- String是值传递还是引用传递
- [python] 线程锁
- synchronized 为什么不能使用string对象而是要使用string.intern
- 使用Mapnik生成地形图——thematicmapping.org译文(四)
- 安卓mysql类库_Android 链接mysql数据库
- python方法怎么调用_python函数怎么调用自身?
- git 分支关系图谱讲解
- exynos 4412 电源管理芯片PMIC 的配置及使用方法
- Cent OS7基础 第五节
- Spark Mllib里的分布式矩阵(行矩阵、带有行索引的行矩阵、坐标矩阵和块矩阵概念、构成)(图文详解)...
- Python程序员经常会遇到文件权限问题,例如在打开或写入文件时出现“PermissionError: [Errno 13] Permission denied...
- Flex常用布局,了解一下
- 【蓝桥杯】历届试题 数字游戏(C++)
- Excel 2010 SQL应用083 降序排列
- 【算法基础】离散化 AcWing 802. 区间和 (详细)
- 遇到压力面试,该怎么办?
- 山东大学数据库课程设计火车票系统报告
- 智慧水务、水利、环保可视化大屏设计(Axure高保真原型)
热门文章
- java编写桌球游戏素材小球图片_java 桌球小游戏仅一份代码
- c语言汇率转换代码_基于C语言实现的货币转换器.doc
- 小学计算机期末考试试题,小学三年级信息技术期末考试试卷
- python打印日历_python 打印日历
- ReactNative基础(六)使用react-navigation实现页面导航布局效果(TabNavigator)
- 半透明旋转魔方特效的实现
- OOC 面向对象C语言编程实践
- xamppmysql访问被拒绝_如何解决Xampp MySQL错误#2002-无法建立连接,因为目标计算机主动拒绝了它...
- Java 响应对象详解
- android打包后无法访问http请求