当前位置: 首页 / 技术干货 / 正文
好程序员大数据培训分享大数据之基础语法

2020-03-11

好程序员大数据培训分享大数据之基础语法

好程序员

计算机理论介绍

编程基础--进制分类、进制转换

进制

就是进位制。指的是我们来表示一个数字的时候进位的制度。

进制分类

计算机中,常用的进制有以下几种:

进制     描述                           示例                    备注         |

| -------- | ------------------------------ | ----------------------- | ------------ |

二进制   使用01来描述所有的自然数     | 0, 1, 10, 11, 100, 101  | 使用`0b`开头 |

八进制   使用0-7来描述所有的自然数      | 4, 5, 6, 7, 10, 11, 12  | 使用`0`开头  |

十进制   使用0-9来描述所有的自然数      | 6, 7, 8, 9, 10, 11, 12  |              |

十六进制 使用0-9, a-f来描述所有的自然数 | 9, A, B, C, D, E, F, 10 | 使用`0x`开头 |

进制转换

十进制转其他进制

  - 辗转相除法,用数字除进制,再用商除进制,一直到商为零结束,最后将每一步得到的余数倒着连接

其他进制转十进制

  - 每一位的数字乘进制的位数-1次方,再将所有的结果累加到一起

二进制与八进制之间的相互转换

  - 每一个八进制位可以等价替换成三个二进制位

  - 每一个十六进制位可以等价替换成四个二进制位

原码、反码、补码

|      | 正数                             负数                                   |

| ---- | -------------------------------- | -------------------------------------- |

原码 由数字直接计算出的二进制表示形式 最高位表示符号位: 0代表正数, 1代表负数 |

反码 与原码相同                       符号位不变其他位按位取反             |

补码 与原码、反码相同                 反码 + 1                               |

注意事项:

数据的存储与运算都是以补码的形式进行的

补码与补码运算的结果还是补码

对补码再求一次补可以得到原码

什么是Java

Java是一种面向对象的程序设计语言,可以使用这种语言编写程序,实现我们想要的一些功能。主要分三块:

J2SE: Java的标准版,用于标准的应用程序开发。

J2ME: Java的微型版,常用于移动端的开发。

J2EE: Java的企业版,用于企业级的应用服务开发。

Java程序的运行,需要先将.java源文件编译成.class字节码文件,然后由jvm虚拟机将这些字节码文件翻译成机器语言,然后执行相应的操作。

常用名词解释

JDK: Java Development Kit, Java开发框架开发Java程序需要用到的各种工具包。

JRE: Java Runtime Envrioment, Java运行时环境。

JVM: Java Virtual Mechine, Java虚拟机能够运行Java程序

1.2.4 常用DOS命令

- cd: 切换到指定的路径

- dir: 列举当前目录下的所有文件和文件夹

- mkdir: 创建文件夹

- rmdir: 删除文件夹

1.2.5 JDK的安装与环境变量的配置

- JDK的安装

  - 找到对应的版本号直接安装即可

  - 安装完成后在 jdk 的 bin 目录下有编译运行Java程序所需要的指令

环境变量的配置

  - 为什么要配置环境变量

    - 因为我们需要使用bin目录下的javacjava指令来编译和运行程序而使用这两个程序的话就需要先用cd切到指定路径下才能执行并且参数需要写java文件所在的目录因此在编译和运行程序的时候非常不方便。因此需要将bin目录添加到环境变量这样我们就可以在任意的路径下使用javacjava指令,来对我们的程序进行编译和运行。

  - 怎么配置环境变量

    - 我的电脑 -> 右键 -> 属性 -> 高级系统设置 -> 环境变量

    - 选择系统变量 -> Path -> 编辑

      - win10: 新建一个变量,jdk下面的bin目录粘贴进去,并上移到最上方

      - win7/8: jdk下面的bin目录的路径粘贴到所有路径的最前方,然后添加一个路径分隔符;

  - 怎么验证环境变量是否配置成功

    - 新建一个DOS窗口输入指令 javac, 如果没有错误提示就是是成功

1.2.6 注释

注释是对代码的描述是开发者写给自己或者别人看的相当于我们记录的一些笔记或者备忘录。 注释部分的内容不会被编译因此没有语法上的要求。

注释可以分为三类:

单行注释以两个 // 开头后面的一行内容会被注释

多行注释以一个 /* 开头以一个 */ 结尾。中间所有的内容都会被注释

文档注释以 /** 开头, */ 结尾。文档注释中可以添加一些标签,更方便的记录程序的信息

1.2.7 数据类型

在程序中我们需要操作各种各样的数据这些数据都有各自不同的类型。

Java所有的数据可以分为两大类基本数据类型和引用数据类型

引用数据类型又叫做引用类型。在后面课程中具体说明。

基本数据类型又叫做值类型Java中有以下分类:

整型

  - 就是整数按照占用空间大小分为四种

  - 字节型: byte, 1byte, [-128, 127]

  - 短整型: short, 2byte, [-2^15^, 2^15^-1]

  - 整型: int, 4byte, [-2^31^, 2^31^-1]

  - 长整型: long, 8byte, [-2^63^, 2^63^-1]

浮点型

  - 就是小数按照占用空间大小分为两种

  - 单精度浮点型: float, 4byte

  - 双精度浮点型: double, 8byte

  - 双精度浮点型可以比单精度浮点型精确更多的小数点后面的位数

布尔型

  - 用来描述程序中不是对的就是错的不是真的就是假的数据

  - boolean, 1byte

  - 只有两个值: true / false

字符型

  - 用来描述组成一个文本的最小单元

  - char, 2byte

  - 字符型的数据需要用单引号括起来单引号中只能有一个字符不能多也不能少

1.2.8 标识符

由若干个字符组成的一个有序的序列用来描述程序中的一个数据

命名规则

只能由字母、数字、下划线和$符号组成

不能以数字作为开头

不能与关键字和保留字同名

  - 关键字系统占用的已经被赋予了特殊含义的字符序列

  - 保留字系统占用的暂时还没有特殊含义但是后续可能会用到的字符序列

命名规范

望文知意应该可以从标识符的命名中看出想表述的数据含义

遵循驼峰命名法

  - 大驼峰命名法所有的单词首字母都大写

  - 小驼峰命名法首单词除外从第二个单词开始每个单词的首字母都大写

1.2.9 变量和常量

变量在程序运行的过程中数值可以发生改变的数据

常量在程序运行的过程中数值不可以发生改变的数据

在程序中的声明

变量

  - 数据类型 标识符;

  - 数据类型 标识符 初始值;

  - 数据类型 标识符1, 标识符2, ...;

  - 数据类型 标识符1 = 初始值标识符2, 标识符3 = 初始值, ...;

常量

  - final 数据类型 标识符 初始值;

  - final 数据类型 标识符标识符 初始值;

  - Java允许在声明常量的时候不赋值初始值可以延迟赋值。但是赋值只能进行一次。

1.2.10 转义字符

一个特殊的字符\, 主要有两个作用

可以将某些具有特殊含义的字符转成普通字符

  - 单引号用来匹配一个字符的开始和结尾转义字符可以使其成为一个普通的单引号

  - 双引号用来匹配一个字符串的开始和结尾转义字符可以使其成为一个普通的双引号

可以配合某些普通字符使用使其没有特殊含义

  - n本身是一个普通字符配合转义字符使用: \n 表示换行

  - t本身是一个普通字符配合转义字符使用: \t 表示tab

  - r本身是一个普通字符配合转义字符使用: \r 表示return

1.2.11 数据类型转换

一个变量声明完成后在内存中已经开辟好了空间此时是不允许调整空间大小的也就是说这个变量的数据类型是不允许改变的。这里说的数据类型转换指的是声明一个新的指定类型的变量将原来变量中的值拷贝到新的变量中。

数据类型转换可以分为两种:

自动类型转换

  - 又叫做**隐式转换**, 一般是由取值范围小的数据类型向取值范围大的数据类型转换

  - 转换过程不需要任何额外操作

  - 转换后没有任何精度丢失情况

强制类型转换

  - 又叫做**显式转换**, 一般是由取值范围大的数据类型向取值范围小的数据类型转换

  - 转换过程需要强制操作不能自动完成

  - 转换后可能会出现精度丢失的情况

java

byte a = 10;

int b = a;    // 由 byte 类型转型为 int 类型自动完成不需要任何额外操作

int c = 128;

byte d = (byte)c; // 由 int 类型转型为 byte 类型强制操作会存在精度丢失

额外说明

- byte, short, char 类型的数据在进行运算的时候会自动的转型为int类型

浮点型转整型会舍去小数点后面所有的内容只保留整数部分

1.2.12 常用运算符

算术运算符

用来做基础的算术计算, + - * / % ++ --

其中:

- \+ \- \* % 和数学计算中没有区别

两个整型的数据进行除法结果还是整型会将计算的浮点结果强转成整型

自增运算符++, 用在变量前表示是前取变量值后对这个变量进行+1操作

自增运算符++, 用在变量后表示是先对这个变量进行+1操作然后再取变量值

自减同自增

> int a = 10;

>

> int b = a++;    // b的值是10

>

> int c = ++b;    // c的值是11

赋值运算符

=: 将等号右边的值给左边的变量进行赋值

+=, -=, *=, /=, %=: 组合运算符对一个变量进行运算

> a += 10; 等价于 a = a + 10

关系运算符

\> < >= <= == !=

逻辑运算符

& : and

| : or

! : not

^ : 异或xor, 计算逻辑两个相同为false, 两个不同为true

&& :

短路与结果与逻辑与相同区别在于如果前面的结果可以决定整体的运算结果后面的表达式不参与运算

|| :

短路或结果与逻辑或相同区别在于如果前面的结果可以决定整体的运算结果后面的表达式不参与运算

位运算

位运算操作的是两个整型的数字计算的逻辑就是将两个整型的数字求出补码再对补码的每一位做类似于逻辑运算的操作其中 相当于 true, 0 相当于 false

三目运算符

condition ? expression1 : expression2

condition是一个boolean类型的变量或者一个boolean结果的表达式如果conditiontrue, 最终整体的结果取expression1, 否则结果取expression2

好程序员大数据培训官网:http://bigdata.goodprogrammer.org/

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2020-02-17(北京)

    开班盛况

    开班时间:2020-03-02(深圳)

    开班盛况
  • 大数据+人工智能 <好程序员严选班>

    开班时间:2019-12-23(北京)

    开班盛况
  • 大数据+人工智能 <好程序员班>

    开班时间:2020-02-24(杭州)

    开班盛况

    开班时间:2020-02-17(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2020-03-09(北京)

    开班盛况
  • Python全栈+人工智能 <高端班>

    开班时间:2019-07-22(北京)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2020-02-24(北京)

    开班盛况
在线咨询
免费试听
入学教程
立即报名

Copyright 2011-2020 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公安网11010802011455号