Administrator
发布于 2018-12-09 / 1 阅读
0
0

java语法基础

### 进制之间的转换 ```Text (1)正十进制转换为二进制的方式 a.除二取余法,让十进制整数不断地除以2取出余数,直到商为0时将余数逆序排列。 b.拆分法,将十进制整数拆分为若干个二进制权重的和,有该权重则下面写1否则写0。 如: 45 = 32 + 8 + 4 + 1 128 64 32 16 8 4 2 1 0 0 1 0 1 1 0 1 => 0010 1101 (2)正二进制转换为十进制的方式 a.加权法,让二进制的每个数字乘以当前位的权重,然后再累加起来。 如: 0010 1101 => 0*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 1*2^0 => 0 + 0 + 32 + 0 + 8 + 4 + 0 + 1 => 45 (3)负十进制转换二进制的方式 a.先将十进制的绝对值转换为二进制,然后进行按位取反再加1. 如: -45 => 将绝对值转为二进制:0010 1101 => 进行按位取反: 1101 0010 => 再加1: 1101 0011 -45 + 45 = 0 -45:1101 0011 45:0010 1101 + ------------------------- 1 0000 0000 (假设只能存储8位二进制,此时最高位1会被丢弃,溢出) (4)负二进制转换为十进制的方式 a.先减1再按位取反,然后转换为十进制整数后添加负号. 如: 1101 0011 => 先减1: 1101 0010 => 按位取反: 0010 1101 => 转为十进制:45 => 添加负号: -45 ``` ### 整数类型 ```Text 在Java语言中用于描述整数数据的类型有:byte、short、int、long,推荐使用int类型。 其中byte类型在内存空间中占1个字节的大小,表示范围是:-128 ~ 127. -2^7 ~ 2^7-1. 其中short类型在内存空间中占2个字节的大小,表示范围是:-32768 ~ 32767. -2^15 ~ 2^15-1. 其中int类型在内存空间中占4个字节的大小,表示范围是: 正负二十一亿之间。 -2^31 ~ 2^31-1. 其中long类型在内存空间中占8个字节的大小,表示范围是:比int类型还大的数. -2^63 ~ 2^63-1. 在Java程序中若出现直接写出的整数数据叫做 直接量/字面值/常量, 如:66,直接量默认为int类型,若希望表达更大的直接量则需要在直接量的后面加l或者L,来表示long类型的直接量,推荐使用L。 ``` ### 分支结构 ```java 1 if分支结构 if(条件表达式){ 语句块; } 2 if-else分支结构 if(条件表达式){ 语句块1; } else{ 语句块2; } 3 if-else if-else分支结构 if(条件表达式1){ 语句块1; } else if(条件表达式2){ 语句块2; } ... else{ 语句块n; } 4 switch-case分支结构 switch(变量/表达式){ case 字面值1: 语句块1; break; case 字面值2: 语句块2; break; ... default:语句块n; } ``` ### 循环结构 ```java 1 for循环 for(初始化表达式; 条件表达式; 修改初始值表达式){ 循环体; } 2 while循环 while(条件表达式){ 循环体; } 3 do-while循环 do{ 循环体; }while(条件表达式); ``` ### 数组 ```JAVA 数组的声明 数据类型[] 数组名称 = new 数据类型[数组的长度]; - 动态方式 如: int[] arr = new int[3]; - 声明一个长度为3元素类型为int类型的一维数组; int num = 3; - 声明一个初始值为3元素类型为int类型的变量; int arr[] = new int[3]; - 不推荐使用 注意: 只有声明数组时[]中的数字才代表数组的长度,否则一律代表下标; 元素的初始化 数据类型[] 数组名称 = {初始值1, 初始值2, ...}; - 静态方式 ```

评论