首页 > 编程语言 >Java学习_关于变量

Java学习_关于变量

时间:2023-06-19 16:58:21浏览次数:52  
标签:Java 变量 单精度 浮点数 学习 命名 默认值 字节

关于变量的使用主要分为三步骤:

1.变量的声明:这一部分包括变量类型+变量名称

2.变量的赋值:变量名称=数据

3.变量的使用:直接引用名称即可。

 这里要注意一点,如果你想要使用变量,就必须要进行这三步,尽管有时候你不知道变量要赋一个什么值,那也得赋值,你可以随便给个0或者其他的值,赋值是必须的。

下面讲一讲变量类型,在java编程中可以使用的变量类型有很多,通常用的有几种,我们来看一下:

基本数据类型:整型、浮点型、字符型、布尔型
整数类型 —— byte、short、int、long,
浮点类型 —— float、double,float写的时候有可能需要在最后加一个f(大小写都可以)。
字符类型 —— char
布尔类型 —— boolean

整型占用字节空间大小取值范围默认值
byte 1字节 -128 ~ 127 0
short 2字节 -32768 ~ 32767 0
int 4字节 -2^31 ~ (2^31) - 1 0
long 8字节 -2^63 ~ (2^63) - 1 0L

 

浮点型占用字节空间大小取值范围默认值
float 4字节 10^38 0.0F
double 8字节 10^308 0.0

 

字符型占用字节空间大小取值范围默认值
char 2字节 0 ~ 65535 ‘\u0’

 

布尔型占用字节空间大小取值范围默认值
boolean 视情况而定 true、false false

 

这里说明一下Java采用的是Unicode编码:一个英文等于两个字节,一个中文(含繁体)等于两个字节。中文标点占两个字节,英文标点占两个字节,一个数字等于一个字节。

小知识:单精度和双精度的区别

1、所占的内存不同

单精度浮点数bai占du用4个字节(32位)存储空间来存储一个浮点数,包括符号位1位,阶码8位,尾数23位。

而双精度浮点数使用 8个字节(64位)存储空间来存储一个浮点数,包括符号位1位,阶码11位,尾数52位。

2、所存的数值范围不同

单精度浮点数的数值范围为-3.4E38~3.4E38,而双精度浮点数可以表示的数字的绝对值范围大约是:-2.23E308 ~ 1.79E308。E表示10的多少次方,如3.4E38指的是3.4乘以10的38次方。

3、十进制下的位数不同

单精度浮点数最多有7位十进制有效数字,如果某个数的有效数字位数超过7位,当把它定义为单精度变量时,超出的部分会自动四舍五入。

双精度浮点数可以表示十进制的15或16位有效数字,超出的部分也会自动四舍五入。

另外说明一下,1字节等于8位(比特)。

 

说完了数据类型,我们来看一下变量名称的命名:

1.英文拉丁字母:

  username,xingming,etc

2.符号:

  只能用_和$来作为标识符,例如_name、_sex、$name

3.数字:

  这里注意首位不能放数字,会被识别成数字的用法而不是命名的用法,所以要放中间或者后面,name1、name2、name3

4.大小写:

  会被识别成两种不同的命名,name和Name和NAme都不会冲突。

5.系统命名(使用):

  类似class,public,private等等都是系统使用的命名,我们就不能再用这个名字命名了。具体还有那些可以在网上搜搜,或者看编译器的错误提示。

6.长度限制:

  命名的长度一般是没有限制的,想要多长都可以,但是应该以实用为主。

7.标准命名:

  尽量用对应意思的英文单词来命名并伴有大小写避免与系统冲突且能突出重点:像userName、StudentName这种一看命名就知道是干什么用的变量,就很规范。

标签:Java,变量,单精度,浮点数,学习,命名,默认值,字节
From: https://www.cnblogs.com/zhanshuang/p/17491297.html

相关文章

  • StencilJs学习之组件装饰器
    stenciljs可以方便的构建交互式组件支持以下装饰器componentstatepropwatchmethodelementeventlistenComponent装饰器@Component是一个装饰器,它将TypeScript类指定为Stencil组件。每个模板组件在构建时都会转换为Webcomponent。import{Component}from......
  • kotlin 调用对应java实现
    kotlin调用对应java实现1.枚举kotlion默认是publiccotlin枚举enumclassDoorState{OPEN,CLOSE}--------- java实现publicstaticenumDoorState{OPEN,CLOSE;}2.class2.1dataclasskotlin调用dataclassLoginResult(变量)----......
  • Docker Compose 引用环境变量
    ComposeCLI与环境变量ComposeCLI(composecommand-line即docker-compose程序)能够识别名称为COMPOSE_PROJECT_NAME和COMPOSE_FILE等环境变量(具体支持的环境变量请参考这里)。比如我们可以通过这两个环境变量为docker-compose指定project的名称和配置文件:$exportC......
  • 在Java中创建对象的不同方法是什么?
    在这篇快速文章中,我们将讨论在Java中创建对象的五种不同方法。我们知道,类是创建对象的模板或蓝图。让我们列出在Java中创建对象的不同方法。用Java创建对象的5种不同方法1.使用新关键字2.使用  newInstance() Class类的方法3.使用  newInstance() Constructor类的方法4.使用......
  • Java_Jdbc_连接池的testQuery/validationQuery设置
     JDBC连接池的testQuery/validationQuery设置 在《Tomcat中使用Connector/J连接MySQL的超时问题》帖子中想要增加对连接池中连接的测试/验证,防止数据库认为连接已死而Web应用服务器认为连接还有效的问题,Mysql文档中提到Tomcat文档中的例子中用的是validationQuery,但是网......
  • 【电商平台api接口】获取lazada商品评论获取评论内容、评论日期、买家昵称、评论商品
    ​ 请求获取Lazada商品评论(免费获取测试)的作用如下:1.了解商品质量:通过获取Lazada商品评论,可以了解商品的质量、使用感受等信息,从而更好地了解商品的优缺点,为购买者提供更为准确的参考。2.搜集用户反馈:通过搜集Lazada商品评论,可以了解用户对商品的反馈和意见,了解用户的需求和......
  • java反序列化(六)
    fastjson反序列化前置知识fastjson是阿里巴巴开发的一个处理json数据的开源库,简简单单解析一个json字符串是自然不会造成命令执行的,问题在于很多库为了实用性会额外实现一些功能,造成了攻击点fastjson简单使用引入依赖,先用古老版本<dependency><groupId>......
  • java~搞懂Comparable接口的compareTo方法
    Comparable接口的compareTo方法的升序或降序取决于实现该接口的类的具体实现。按照惯例,compareTo方法应该返回负数、零或正数来指示当前对象是小于、等于还是大于传入的对象。具体来说:如果this对象小于传入的对象,则compareTo应该返回负数。如果this对象等于传入的对......
  • JavaScript的数学计算库:decimal.js
    Anarbitrary-precisionDecimaltypeforJavaScript.功能整数和浮点数简单但功能齐全的API复制JavaScript和对象的许多方法Number.prototypeMath还处理十六进制、二进制和八进制值比Java的BigDecimalJavaScript版本更快,更小,也许更容易使用无依赖关系广泛的平......
  • Java 运算符的使用
    Java运算符的使用1.算术运算符算术运算符包括:+,-,*,/,%,++,--,其中需要注意的是%,++,--;%取模运算也叫做取余,在Java中取余的规则:a%b=a-a/b*b++和--叫做自增运算即+1或-1++在前,先自加,后赋值++在后,先赋值,后自加(--运算与自增用法类似)2.算......