JAVA八种基本数据类型存储数值,字符和布尔值

把JAVA的知识点在回顾回顾,要不然都忘掉了。

基本数据类型:4类8种

整数型

byte    1      -128~127

short   2

int     4

long    8

浮点型

float   4

double  8

字符型

char    2

布尔型

boolean 1

内存空间不同 取值范围不同

byte 内存空间8

short  内存空间16

int     内存空间32

long     内存空间64

float    内存空间32

double    内存空间64

1:在定义Long或者Float类型变量的时候,要加L或者f。

整数默认是int类型,浮点数默认是double。

byte,short在定义的时候,他们接收的其实是一个int类型的值。

这个是自己做了一个数据检测的,如果不再它们的范围内,就报错。

2:byte值的问题  -128~127

一个字节  01111111  127

byte b1 = 127;

byte b2 = (byte)128; //-128

byte b3 = (byte)129; //-127

byte b4 = (byte)130; //-126

byte的范围:-128 ~ 127

127 01111111

-127: 11111111

+1

------------------------

10000000

-128:10000000 (最高位即是符号位,也是数值位)只有在临界的时候

3:数据类型转换之默认转换  小的数据类型到大的数据类型

byte,short,char -- int -- long -- float -- double

long: 8个字节

float:4个字节

A:它们底层的存储结构不同。

B:float表示的数据范围比long的范围要大

long: 2^63-1

float:3.4*10^38 > 2*10^38 > 2*8^38 = 2*(2^3)^38 = 2*2^114 > 2^63-1

4:Java语言中的字符char可以存储一个中文汉字吗?为什么呢?

可以。因为java语言中的字符占用两个字节。

Java语言采用的是Unicode编码。

常量: 在程序执行过程中其值不发生改变的量

分类:

字面值常量

字符串常量

整数常量

小数常量

字符常量    里面只能是单个字符

布尔常量    true和false

空常量      数组

自定义常量

进制:x进制就是 逢x进一

二进制   由0,1组成  0b

八进制   由0-7组成 0

十进制   整数默认都是十进制

十六进制  由0-9,a-f(可以是大写)     0x

进制转换

任意进制转换十进制

位权展开法

十进制转换成任意进制

除基取余,直到商为零,余数反转

快速转换

8421码  二进制与十进制的转换

二进制快速转换八进制   分组法

二进制快速转换十六进制   分组法

原码,反码,补码

存在计算机底层  是二进制的运算

数据运算的时候用的是该数据的二进制的补码进行计算的

展示用的是该数据的二进制原码

正数的原反补都一样,最高位是符号位0  其余位是数值位

负数 原码 最高位符号位1,其余位是数值位

反码 最高位不变,其余位按位取反

补码  反码+1

变量:

在程序执行过程中,在一定范围内其值可以发生改变的量

相当于数学中的未知数

定义格式 :

数据类型 变量名 = 初始值;

同类型的常量

java中存在 隐式转换(默认转换)

(1): boolean类型不能转换为其他的数据类型

(2): byte,short,char—int—long—float—double

(从小的范围往大的范围转)

如果遇到int类型参与运算 得到的结果肯定是int类型

如果有long参与运算,得到的结果肯定是long类型

如果有float参与运算,得到结果肯定是float类型

如果有double参与运算,得到结果肯定是double 类型

(3): byte,short,char之间不转换,他们参与运算首先转换为int类型

注意:大类型 转 小类型 可能会损失精度。

public class DataTyepDemo {
public static void main(String[] args) {
byte a = 3;
int b = 4;
int c = a+b;
System.out.println(c);
}
}

还有强制类型转换

public class DataTyepDemo1 {
public static void main(String[] args) {
byte a =3;
int b = 4;
byte c = (byte) (a+b);
System.out.println(c);
}
}

你发现 字符 对应 int类型  应该有 一一对应的关系

在一个表内

ASCII

‘0‘      48

‘a‘      97

‘A‘      65

public class DataTypeDemo2 {
public static void main(String[] args) {
System.out.println("hello" + ‘a‘ +1 );
System.out.println(‘a‘ + 1 + "hello");
System.out.println("-------------");
System.out.println("5+5="+5+5);
System.out.println(5+5+"=5+5");
}
}

结果:

helloa1

98hello

-------------

5+5=55

10=5+5

变量使用的注意事项

a:作用域问题

变量定义在哪一级大括号中,哪个大括号的范围就是这个变量的作用域。

相同的作用域中不能定义两个同名变量。

b:初始化值问题

没有初始化值不能直接使用

c:在一行上建议只定义一个变量

可以定义多个,但是不建议

变量定义格式

数据类型  变量名 = 初始化值;

数据类型 变量名;

变量名 = 初始值;

public class DateTypeNoticeDemo {
public static void main(String[] args) {
int a = 10;
int b = 10;
System.out.println(a);
System.out.println(b);
}
}
public class DataTypeTest {
public static void main(String[] args) {
byte b = (byte) 130;
System.out.println(b);
}
}
/*
  分析:
      130  int  类型  4个字节  32bit
       原码 00000000 000000000 00000000 10000010
   强制转换就是一种运算
     对补码 进行强制转换 
补码 00000000 000000000 00000000 10000010 
强制转换之后得到
                    10000010  --------补码
10000001  --------反码
11111110  ---------原码
-126
*/
public class DataTypeTest2 {
public static void main(String[] args) {
float f1 = (float)12.345;  //这里面 12.345常量是double类型 8个字节 
              //做了强转之后 再赋值给float类型变量
System.out.println(f1);
float f2 = 12.345f;      //这里 12.345常量就是float类型的 直接做赋值
System.out.println(f2);
}
}

放在操作数前面

先自加(减)  然后再参与运算

放在操作数后面

先参与运算  然后自加(减)

public class DataTypeTest3 {
public static void main(String[] args) {
int a = 10;
int b = 10;
int c = 10;
a = b++;  //a 10 b 11 c 10
c = --a;  //a 9  b 11 c 9
b = ++a;  //a 10 b 10 c 9
a = c--;  //a 9  b 10 c 8
System.out.println("a:"+a);
System.out.println("b:"+b);
System.out.println("c:"+c);
}
}

比较运算符

public class OperatorDemo {
public static void main(String[] args) {
int a = 32;
int b =23;
System.out.println(a==b);
System.out.println(a>b);
System.out.println(a!=b);
System.out.println(b>=a);
}
}
时间: 2024-12-07 02:21:22

JAVA八种基本数据类型存储数值,字符和布尔值的相关文章

java八种基本数据类型及包装类详解

详解一.八种基本数据类型常识 1.1.基本常识表 对于上图有以下几点需要注意: java八种基本数据类型分为四类八种,四类分别为整型.浮点型.布尔型.字符型:八种分别为byte.short.int.long.float.double.boolean.char: java八种基本数据类型的字节数:分别为1.2.4.8个字节:1字节(byte.boolean). 2字节(short.char).4字节(int.float).8字节(long.double): 整数的默认类型为int,浮点数的默认类型

Java——八种基本数据类型(常用类)

装箱和拆箱 装箱:基本数据类型转为包装类 拆箱:包装类转为基本数据类型 jdk1.5(即jdk5.0)之后的版本都提供了自动装箱和自动拆箱功能 基本数据类型的包装类 举两个例子,看一下 1 public class Demo01 { 2 3 public static void main(String[] args) { 4 5 6 7 int i = 3;//基本数据类型 8 Integer i1 = new Integer(i);//包装类 装箱 9 System.out.println(i

Java八种基本数据类型

(1)四种整数类型(byte.short.int.long): byte:8 位,用于表示最小数据单位,如文件中数据,-128~127 short:16 位,很少用,-32768 ~ 32767 int:32 位.最常用,-2^31-1~2^31  (21 亿) long:64 位.次常用 注意事项: int i=5; // 5 叫直接量(或字面量),即 直接写出的常数. 整数字面量默认都为 int 类型,所以在定义的 long 型数据后面加 L或 l. 小于 32 位数的变量,都按 int 结

Java四类八种基本数据类型

java四类八种基本数据类型 第一类:整型 byte short int long 第二类:浮点型 float double 第三类:逻辑型 boolean(它只有两个值可取true false) 第四类:字符型 char 字节:boolean 布尔型              1/8 byte 字节类型                1char 字符型                  2  一个字符能存储一个中文汉字short 短整型                 2int 整数类型   

四类、八种基本数据类型,其他都是引用数据类型

第一类:整型 byte short int long 第二类:浮点型 float double 第三类:逻辑型 boolean(它只有两个值可取true false) 第四类:字符型 char 这四类八种基础数据类型 都在栈中直接分配内存空间,这些都是基础数据流类型,剩下的一切引用类型都存储在堆中,引用存储在栈中,数据存储 在堆中 引用指向堆中的数据,我说的这些可能大家 比较绕,做个比喻吧,把客厅比喻java的栈内存块,把卧室比如堆内存块,然后呢 电视机的遥控器也就是也就是电视机的引用放在客厅里

java 8种基本数据类型

java四类八种基本数据类型: 第一类:整型 byte short int long 第二类:浮点弄 float double 第三类:逻辑型 boolean(它只有两个值可取 true false) 第四类:字符型 char 基本数据类型:在栈中可以直接分配内存. 引用数据类型:数据的引用在栈中,但是他的对象是在堆中. 数据类型 占用字节数 boolean 1/8 char 2(一个字符能存储一个中文汉字) byte 1 short 2 long 8 int 4 float 4 double

标识符、八种基本数据类型、常量、变量、数据类型转换

一.标识符(用来标识变量名.函数名.数组名.类名的字符组合) 标识符的命名规则; 1.一般采用驼峰式的命名规则, 2.类名和接口名:首字母大写, 3.标识符首字母只能为字母._.$三种情况 4.除首字母外其他可为任意字符 5.标识符不能为关键字 二.八种基本数据类型和引用数据类型 基本数据类型 数值型:整型(byte,short,int,long);浮点型(float,double) 字符型(char) 布尔型(boolean): 引用数据类型 类(class) 接口(interface) 数组

Java 八种基本类型和基本类型封装类

1.首先,八种基本数据类型分别是:int.short.float.double.long.boolean.byte.char:   它们的封装类分别是:Integer.Short.Float.Double.Long.Boolean.Byte.Character.   数据类型  包 装 类 字节长度 默 认 值 int Integer 4 0 short Short 2 0 long Long 8 0l或0L byte Byte 1 0 float Float 4 0.0F或0.0f doubl

1.5—JAVA中常用的三类八种基本数据类型

基本数据类型(primitive  data  type) Java是一种强类型语言,每个变量都必须声明其类型. Java的数据类型分为两大类:基本类型(primitive type)和引用类型(reference type) Java中定义了3类8种基本数据类型 逻辑型-boolean 文本型-char 数值型-byte,  short,  int,  long, float,  double 注意事项 ·引用数据类型的大小统一为4个字节,记录的是其引用对象的地址!我们学习面向对象后,重点学习