类结构、进制和变量
来源:互联网 发布:怎么开好淘宝网店 编辑:程序博客网 时间:2024/06/06 09:30
一、 类结构的组成:
1、 单挑语句:如 System.out.println(“hello world!”);
2、 块语句: 一个 { 开始到 } 结束
3、 带标签的块语句 标签 { }
4、一个 ; 也是一条语句
注意:java是一种若格式语言,
空格、换行、制表符 都可以被忽略。
单条语句的后面的分号 ; 是与该条语句在一起的。
二、 进制的问题
1. 进制的转化
a. 十进制转化为二进制:
十进制的数除以2,得到的商和余数,直到商为0, 余数倒序就是该数的二进制码。
所以11的二进制码位1011
b. 二进制转化为十进制
2进制的数字从右往左乘以对应的权位相加的到。
同理八进制和十六进制的也是一样的。
C.二进制转化为八进制
二进制数中,从右往左每三个位是在一起,相加起来的数是八进制的数。
二进制数中,从右往左每四个位是在一起,相加起来的数是十六进制的数。
2、 原码、反码、补码
a.在计算机中,计算机底层运行的数据都是一补码的形式进行运算的。
b.正数的原码、反码、补码都是相同的。
c.负数原码,反码和补码是不一样的。
如: -10 原码:10001010 反码:11110101 补码:11110110
负数中,反码是原码除符号位之外按位求反,补码为反码+1
3、 1个byte的取值范围
一个字节最多表示 256个数字:
最大值: 0 111 1111 127
最小值: 1 000 0000 -128
-1 补码1 111 1111
-10补码1 111 0110
-100补码1 001 1100
-127补码1 000 0001
-128原码1 000 0000 反码 1 111 1111 补码1 000 0000
三、 二进制的相关程序和注意事项。
/**
目的:在程序中使用不同的进制数字
注意:在java语言中,直接输出的是数字,java默认为十进制
java语言中各种数制的表示方法:
是通过标志来告诉编译器的,告诉编译器当前是什么进制:
1、二进制用 0b或0B来表示 这是JDK 1.7之后的新特性
2、八进制用 0
3、十六进制 0X或0x
0x常见于源代码中
*/
class Demo1
{
publicstatic void main(String[] args)
{
System.out.println(10);//java系统中默认的是十进制数
System.out.println(0b10);//当做二进制进行解析,转化成十进制打印
System.out.println(010);//当做八进制解析,转成十进制打印
System.out.println(0x10);//当做十六进制解析,转成十进制打印
}
}
运行结果
四、 变量类型
a、变量类型:
1、基本数据类型
整 型:
byte ------ 1字节 ----- 8bit
short------ 2字节 ----- 16bit
int ------ 4字节 ----- 32bit
long ------ 8字节 ----- 64bit
浮点型:
float------ 4字节 ----- 32bit
double----- 8字节 ----- 64bit
字符型:
char------- 2字节 ----- 16bit ----- 无符号
布尔型:
boolean---- 1字节 ----- 只有一个bit进行标志
2、引用类型
"HelloWorld !"
b、精度的自动转化
由于每个数字的精度都一样,这样在负值的时候就有可能出现一些错误,为了避免出现这些错误,我们不能把高精度的字符类型付给低精度的字符类型,如:short b= int a。
精度的比较
byte < short < int < long
flort < double
/**
输出不同进制的数
1、当直接使用一个数据时,在内存会给他分配空间
2、这块内存没有别名
3、称呼这块内存是通过称呼他的值完成的 ----- 字面值
4、这块内存没别名,以后不可使用,所以二进制位的表示形式不可以再改变 ---- 常量
final修饰的常量
1、这块内存有别名
2、通过别名可以找到内存
3、这块内存使用final做了特殊标记 ---- 编译器发现试图更改他时,会抛出异常
使用字面值常量:
没有显示的指定数据类型,如果是整型的,系统默认是分配4个byte
小数型默认8个byte
字符型是两个字节
布尔型一个字节
*/
class VarDemo01
{
publicstatic void main(String[] args){
//System.out.println(1);
//finalbyte b = 1;//声明了一个变量,名字是b,对应的内存的值不可以改变
//b= 2;
//System.out.println(b);
//整数
System.out.println(100);
//小数
System.out.println(2.34);
//字符型
System.out.println('A');
//布尔型
System.out.println(true);
}
}
- 类结构、进制和变量
- 结构体变量和类对象的定义
- swift-结构体和类创建的变量
- c++结构体和类的变量访问级别区分
- SHELL中的特殊变量和结构
- 结构化编程:变量,常量和赋值
- shell中特殊变量和结构
- oracle 查看变量和表结构
- 变量、数据类型、运算符和条件结构
- SHELL中的特殊变量和结构
- SHELL中的特殊变量和结构
- 结构体变量的初始化和赋值
- 定义和使用结构体变量
- 结构体变量的引用和赋值
- 21.变量的结构和类型
- 结构变量的定义和引用
- PLSQL 之类型、变量和结构
- nginx 变量的保存结构和优化
- jsp传参方法
- java设计模式学习笔记--外观模式
- PullToRefresh使用详解(三)--实现异步加载的下拉刷新列表
- android开发常用函数集合
- 【Android】监测root权限:通过判断su文件确定
- 类结构、进制和变量
- eclipse-解决直接在eclipse中复制,粘贴动态web项目并运行后,项目名字还是原来名字的问题
- binary、char类型数据互转函数
- STL之vector学习
- hostapd error “nl80211: Could not configure driver mode”
- Eclipse下使用JUnit Test
- MD5加密算法
- IIS无法启动计算机上的服务W3SVC如何修复
- 云计算在安全上应该怎么做才能突破挑战呢