数据类型与变量

目录

 冯诺依曼体系:

计算机之父:  冯诺依曼

基本数据类型有四类八种:

IDEA创建项目的过程:

int所表示的范围: -2^31  到  2^31-1   

包装类:(只有8种基本数据类型才有包装类)

String是字符串类型 。

long类型:

 short在任何系统下都占2个字节,

1. byte在任何系统下都占1个字节

float类型

字符类型:  char 

boolean类型

 类型转换:

类型提升:

字符串相加

使用 . valueOf 来进行 类型转换:

以String.valueOf为例:

以Integer.valueOf 为例:

下面是double的valueOf 的内部函数调用:


 冯诺依曼体系:

 外存:磁盘,U盘,硬盘,光盘等等。

计算机之父:  冯诺依曼

 常量即程序运行期间,固定不变的量称为常量,比如:一个礼拜七天,一年1 2个月等。

字符串、整形、浮点型、字符型以及布尔型,在Java中都称为数据类型。

在Java中数据类型主要分为两类:基本数据类型和引用数据类型。

基本数据类型有四类八种:

四类:整型、浮点型、字符型以及布尔型

在Java中不论是在16位系统还是32位系统,int都占用4个字节,long都占8个字节

例如int a=10;   这里的 a 是一个整型变量,它的大小就是固定的,是不分平台的,就是4个字节。

整形和浮点型都是带有符号的。

整型默认为int型,浮点型默认为double

字符串属于引用类型。

Java的集成开发环境:IDEA,MyEclipse,Eclipse 等。 

IDEA创建项目的过程:

选中src,然后右键,新建一个项目

运行方法,点击绿色三角形 ,然后点击Run'文件名.main()'

 

一些快捷方式: 

被final修饰就不能修改它的值了 ,它就成为常量了。

例:final int a=10; 这里a的值就不能修改了。

单位及其换算:

bit(比特)   byte(简称B)(字节)    KB   MB   GB   TB   PB   EB   ZB   YB   BB

1Byte = 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

1TB = 1024GB

1PB = 1024TB

1EB = 1024PB

int所表示的范围: -2^31  到  2^31-1   

int是4个字节,就是32bit 。

包装类:(只有8种基本数据类型才有包装类)

int 的包装类是:Integer

long 的包装类型为: Long

short 的包装类型为: Short

byte 的包装类型为: Byte

char 的包装类型为:Character

double 的包装类型为:Double

float 的包装类型为:Float

boolean 的包装类型为:Boolean

包装类是基本数据类型对应的类类型。

String是字符串类型 。

数据类型分为:1,基本数据类型  (8种基本数据类型)

2,引用数据类型 (String  ,包装类,数组,接口等) 

long类型:

运行截图:long类型的表示范围

short在任何系统下都占2个字节,

short可以表示的范围为: -32768 ~ 32767

short的包装类是Short

Java的安全性,超过可表示的范围就直接报错

这个当中定义的sh的范围超过了short所能表示的范围,所以会报错的。

1. byte在任何系统下都占1个字节

2. byte 的范围是: -128 ~ 127
3. 字节的包装类型为 Byte

之所以有多种数据类型是因为在不同的使用适用场景中,有各自不同的适用类型。就像衣服的尺码一样。

小数的最大值和最小值我们不去研究。

这个结果是0,如果想出现小数需要a或者b有一个是小数才可以;或者乘以1.0也是可以解决的,就可以输出小数了。

其他的输出方法,(注; printf在Java中很少使用.)

在Java中如果等号右边的值的类型 的范围比等号左边的值的类型的范围大,就必须进行强制类型转换或者其他的处理,使得等号2边的类型保持一致,要不然就会报错。

float类型

这个里面的float类型的f的赋值,12.5默认是double类型的,想不报错让12.5是float类型的,一个办法就是在12.5的后面加一个f,就可以了。

字符类型:  char 

(2个字节)可以是单个字符,可以是汉字,可以是数字(数字可以是0到2^16)(输出时输出的是数字对应的字符)。

计算机中的字符本质上是一个整数 . C 语言中使用 ASCII 表示字符 , Java 中使用 Unicode 表示字符 . 因此
一个字符占用两个字节 , 表示的字符种类更多 , 包括中文 .
char 的包装类型为 Character

boolean类型

在Java的boolean类型中,真就是true ,假就是false,对于boolean,在JVM中并没有明确它的大小,在boolean中只可以给它赋值true或者false,其他的赋值会报错的。

例:

这里给boolean类型的flg赋值了1,不是true或者false,所以报错了。

但是在C语言中,0代表假,非0即为真。

这2种语言在这里是有区别的。

 类型转换:

类型提升:

注:对于小于4个字节的类型,在运算的时候,会被先提升为4个字节的,然后在参与运算。

例如:byte,char 类型。

a和b参与运算的时候,a是int类型是 4个字节的,b 是long类型是 8个字节的,所以a会被先提升为long类型是 8个字节,然后和b参与运算,最后a+b 的结果也就是long类型的是 8个字节的,但是c是int类型的是 4个字节的,所以就会报错。

 可以把a+b的结果强转成为4个字节的int类型,   ------->   int c=(int)(a+b);

也可以使用8个字节的long类型来接收a+b的值。 ------->   long d=a+b;

 str存的也是h 的地址,但是在Java中的字符串不是以\0截止的。

它是靠字符的个数来打印字符串的。

字符串相加

在字符串中,如果2个字符串进行相加,那么就是这2个字符串进行拼接的意思

并且字符串加上任何类型都会变成字符串 (字符串拼接任何类型都会变成字符串 类型)

(注: 运算都是从左向右运算的。)

对于这个里面:a=10;    b=20;

运算从左到右进行计算,所以第一个输出结果是:a=10

第二个输出结果是:b=20

第三个输出结果是:a+b=1020

对第三个特殊解释一下:因为字符串加上(+)任何类型都会变成字符串,从左到右的进行运算所以,首先 “a+b="  是字符串(a+b=),然后加上 a  所以    “a+b=" +a   也是一个字符串了( a+b=10),所以 “a+b=" +a+b   就也是一个字符串了(a+b=1020)

使用 . valueOf 来进行 类型转换:

以String.valueOf为例:

通过点号   .    来调用类里面的方法  -----》  String.valueOf(变量名 )

                                                         例如: String.valueOf(a )             

                         这个可以把其他类型转换成String类型。(转换成字符串类型)

还有一种可以把其他类型转换成为字符串的方法,就是把这个变量名+一个字符串(可以是空格)例如:int a =12345 ;    String aa= a+ " " ;

以Integer.valueOf 为例:

在Integer 这个类里面,的valueOf在它的函数内部调用了 parseInt 这个函数,

所以 String str= "12345" ;    int  ret = Inreger.valueOf(str) ; 

                                            int ret3 = Integer.parseInt(str);

                                         这2种写法是一样的。

以Integer.valueOf 为例:(代码)

String.valueOf 可以把其他类型转换成为String类型
Integer.valueOf  可以把其他类型转换成int类型
Double.valueOf  可以把其他类型转换成double类型

下面是double的valueOf 的内部函数调用:

以Double.valueOf为例:(代码)

这种转换是不能成功 的,abc本身就不是int类型的,所以肯定转换是成功不了的。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值