变量&数据类型

本文介绍了Java中的变量、数据类型及其转换规则。包括变量的声明、赋值,基本数据类型如整数、浮点数、字符和布尔型,以及引用数据类型如String和数组。详细讲解了数据类型之间的自动转换和强制转换,并给出了具体的转换规则。此外,还讨论了Scanner类在程序中接收控制台输入数据的应用。
摘要由CSDN通过智能技术生成

变量&数据类型

1.什么是内存?

内存是瞬时状态下的存储空间。 造价高、设计瓶颈。 普适性 普遍

2.java的虚拟机默认分到的物理内存是 1/8;

3.存储单位 bit(位)->byte(字节)->KB->MB->GB->TB->PB->EB

第一节:变量

变量:计算机内存中的一块存储空间。是存储数据的基本单元。

1.1声明方式

变量由 数据类型、变量名、值。三部分组成。

​ I.声明变量 数据类型 变量名; int money; //在内存当中开辟一块空间

​ ii.赋值 变量名 = 值; money =3000; //在空间里存储3000;

​ iii.声明变量同时赋值 数据类型 变量名 = 值; int dollar = 3100;//开辟一块空间,并存储3100;

​ iii(了解)同时声明多个变量:int a,b,c,d=300; a、b、c需要自行赋值。否则报初始化错误。

​ 注意事项:

​ 1.在同一个范围内,变量名不允许重复。 money

​ 2.数据类型和赋予的值 要完全一致。 int === 整数

第二节: 数据类型

分为基本数据类型 引用数据类型

基本数据类型:

整数: 二进制取值 十进制取值 字节

​ byte -2^7 ~ 2^7-1 -128-127 1

​ short -215~215-1 -32768 - 32767 2

​ int -231~231-1 -2147483648- 2147483647 4

​ long -263~263-1 -922京~922京 8

小数(浮点数):

​ float 4

​ double 8

字符型:

char ASCII编码 和UNICODE编码(万国码) 2

​ char c1 = ‘你’;

​ char c2 = 65;//存放的是ASCII编码的十进制

​ char c3 = ‘\u0041’ 采用十六进制来赋值 65

布尔型:

boolean 有且只有两个值 true/false 真/假 1字节

以上为 八大基本数据类型

引用数据类型:

String 存储的是" "所编写的字面值 String name=“Tom”;

数组:int [] a = new int [5];

第三节:数据类型转换

3.1 自动类型转换(short i=1;i*=1;这里是自动类型转化所以不需要强制类型转换;short i=1;i=i+1;这里报精度可能丢失的错误,1是int型,i是short型目标类型小于源类型要强转)

3.1.1 要求两种数据类型相互兼容。

3.1.2 目标类型 要大于 源类型

​ 自动类型提升的规律: byte–>short–>int–>long–>float -->double

​ char --> int

​ 将较小的数据类型 可以直接赋值较大的数据类型。

3.2 强制类型转换

​ 3.2.1数据类型要相互兼容

​ 3.2.2 小目标类型 = (小目标类型)大目标类型数。 byte b = (byte)short;

3.3自动类型提升

进行算术运算时:

​ 操作数中有double,则结果提升为double类型

​ 操作数中没有double,有float,则结果提升为float

​ 操作数中没有float,有long,则结果提升为long

​ 操作数中没有long,有int,则结果为int

​ 操作数中没有int,均为short或byte,结果为int(默认)

特殊:

​ 任何数据类型与String类型,相拼接(+)时,结果自动提升为String类型

​ 可以理解为 字符串连接

第四节:扫描仪 Scanner

概念:

在程序运行过程中,可以手动输入数据,程序再继续向下执行。

控制台输入数据。

使用步骤:

1.导包     import java.util.Scanner;   

2.创建Scanner类型的变量      Scanner  名  =new Scanner(System.in);

3.使用Scanner提供的函数,进行相应的数据输入。

Scanner中的函数:

1.sc.next(); //从控制台输入一个字符串。

2.sc.nextInt();//从控制输入一个整数

3.sc.nextDouble(); //从控制台输入一个小数

4.sc.next().charAt(0);//从控制台输入的字符串当中,截取第一个。 自己遵守

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值