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)相关推荐

  1. 0基础学Java需要多久?

    0基础学Java需要多久?黑马程序员零基础系统学习的Java课程课时348小时,至少要学习5-6个月的时间,不同的课程大纲课时也不一样,具体课看课程的详情:Java基础课程课时在5-20小时不等,根据 ...

  2. 【0基础学java】教学日志:javaSE-面向对象6-面向对象前4章上机作业点评,主要涉及继承、封装、多态三个章节的内容

    目录 一.面向对象第一章上机作业参考答案(略) 二.面向对象第二章上机作业参考答案: 三.面向对象第三章上机作业参考答案: 1.上机练习1已在第三章博客中编写,请参考: 2.上机练习2 四.面向对象第 ...

  3. 0基础学java有多难?自学Java和参加培训学Java的难易度对比分析!

    在一些知识问答平台上,我看到有很多在问"0基础学java有多难",如果你想0基础自学Java那可能会比较困难,但是如果选择报培训班进行学习,即便是0基础,学Java其实也并不难.所 ...

  4. 0基础学java可行吗_零基础可以学习JAVA吗?

    肯定是可以学的,每一个人做每一件事都是从0基础开始的,他们并不是生下来就会Java,会编程,都是通过后天的努力说得到的技能 你只需要找对方法,找对带你的人,你就可以学好 学习Java的方式有这几种: ...

  5. 【0基础学java】教学日志:javaSE-面向对象6-接口、面向接口编程、内部类

    目录 本章概述: 一.为什么使用接口 1.Door.java 2.DoorBell.java 3.Lock.ja 二.接口的基本使用 1.Lock.java 2.LockDoor.java 3.Tes ...

  6. 0基础学java培训_零基础可以学习java课程么?零基础java培训需要多久?

    零基础可以学习java课程么? 第一.兴趣爱好是重要,总体目标很重要 在你学习培训java以前,一定要清晰自身对java是不是确实很感兴趣,還是一时头昏脑涨.终究学习培训java不仅要把握技术性,也要 ...

  7. 【0基础学java】教学日志:项目实战-坦克大战-3

    本章概述:本章主要讲了 1.定义坦克方向的enum,根据按键状态确定坦克方向,根据坦克方向确定坦克位移. 2.抽象出坦克类,封装相应的属性和方法,在tankFrame中直接调用. 3.添加坦克静止的处 ...

  8. 【0基础学java】教学日志:javaSE--Stream API

    本章概述:本章主要讲了Stream特性,Stream运行机制,Stream的创建,Stream常用API,以及Stream API在实际应用开发中的作用 目录 本章概述: 一.annotation 1 ...

  9. 成都天瑞地安:零基础学Java最快捷的7个计划

    0基础学Java,只要方法得当,就有机会学好Java开发.学Java就像交朋友一样,从陌生到熟悉再到死党,随着学习的深入,你会发现Java并不是想象的那么枯燥和困难,甚至有种妙不可言的乐趣. 1.透彻 ...

  10. [零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](1)

    MIS信息管理系统实战开发之使用MySQL实现保存 开发背景 ID.姓名.年龄为公共信息,而学生有成绩,工人有工资 定义一个抽象类Person(ID.姓名.年龄),学生是其子类,有成绩,工人是其子类有 ...

最新文章

  1. hadoop centos 安装
  2. jsp中的basePath和path (绝对路径 相对路径)
  3. String是值传递还是引用传递
  4. [python] 线程锁
  5. synchronized 为什么不能使用string对象而是要使用string.intern
  6. 使用Mapnik生成地形图——thematicmapping.org译文(四)
  7. 安卓mysql类库_Android 链接mysql数据库
  8. python方法怎么调用_python函数怎么调用自身?
  9. git 分支关系图谱讲解
  10. exynos 4412 电源管理芯片PMIC 的配置及使用方法
  11. Cent OS7基础 第五节
  12. Spark Mllib里的分布式矩阵(行矩阵、带有行索引的行矩阵、坐标矩阵和块矩阵概念、构成)(图文详解)...
  13. Python程序员经常会遇到文件权限问题,例如在打开或写入文件时出现“PermissionError: [Errno 13] Permission denied...
  14. Flex常用布局,了解一下
  15. 【蓝桥杯】历届试题 数字游戏(C++)
  16. Excel 2010 SQL应用083 降序排列
  17. 【算法基础】离散化 AcWing 802. 区间和 (详细)
  18. 遇到压力面试,该怎么办?
  19. 山东大学数据库课程设计火车票系统报告
  20. 智慧水务、水利、环保可视化大屏设计(Axure高保真原型)

热门文章

  1. java编写桌球游戏素材小球图片_java 桌球小游戏仅一份代码
  2. c语言汇率转换代码_基于C语言实现的货币转换器.doc
  3. 小学计算机期末考试试题,小学三年级信息技术期末考试试卷
  4. python打印日历_python 打印日历
  5. ReactNative基础(六)使用react-navigation实现页面导航布局效果(TabNavigator)
  6. 半透明旋转魔方特效的实现
  7. OOC 面向对象C语言编程实践
  8. xamppmysql访问被拒绝_如何解决Xampp MySQL错误#2002-无法建立连接,因为目标计算机主动拒绝了它...
  9. Java 响应对象详解
  10. android打包后无法访问http请求