标识符命名规范

可以有字母数字下划线和美元符组成, hello abc

不能以数字开头 123abc

严格区分大小写 void Void

不能是java的关键字和保留字 class

标识符必须是见名知意的

ps:在Eclipse中紫色的都是关键字

关键字

具有某个特殊含义的字符串例如class

变量

什么是变量

数据在计算机中存储需要,内存地址,数据值,以及标识符,我们未来更好的描述这种数据,所以给他取名字叫变量,

变量的三个组成,变量类型,变量名称,变量值

变量名命名规范:

1.满足标识符规则

2.符合驼峰命名法 小驼峰

3.简单,见名知意 长度没有限制

类的命名规范:

pascal规范,每个单词首字母都是大写

数据类型

数据类型分两类:

​ 基本数据类型

​ 引用数据类型

基本数据类型又包含:

  • 数值

    • 整数 (byte,short,int,long)

    • 浮点 (float,double)

  • 字符 (char)

  • 布尔 (boolean)

基本数据类型说明:

类型 说明 字节数
byte 字节型 1
short 短整型 2
int 整型 4
long 长整型 8
float 浮点数 4
double 双精度浮点 8
char 字符 2
boolean 布尔 1

字面值

java表示整数字面值

八进制:0开头 包括0-7

​ 例如:037,056

十六进制:0x(小写或大写均可)开头,包括0-9,以及字母a-f,A_F

如:0x12,0xBF

浮点字面值

双进度浮点数

123.1d , 1.1D

单精度浮点

1.1f 1.2F

后缀就是名字的首字母

注意:

当小数后面没有任何字母时默认为double类型

在java中 较小的类型可以转换为较大的类型,较大的类型不可以直接转换为较小的类型,会造成数据丢失

使用科学计数法表示浮点型数据

double d = 1.23e5; //表示1.23 乘以 10的5次方  小数点向后5位
float d1 = 1.23e5f; //表示1.23 乘以 10的5次方 float类型
// 省略整数部分 就是 0.x
double d2 = .2;
float d3 = .2f; System.out.println(d1);

字符型字面值

使用大单引号定义一个字符变量

char a = 'A'

char ch = 65;

可以使用整型作为值,会自动转换为ASC对应的字符

整型和字符型可以使用ASC相互转换

注意:当字符的链接操作中都是整数或是字符时,字符会被转为整数
System.out.println('\t'+'a');
System.out.println('\t'+"a");

布尔类型字面值

true / flase

字符串字面值

使用双引号包裹的0或多个字符(可以是unicode字符)

String a = ""; //空字符

String a = "abc";

变量声明

变量类型 变量名 = 变量值;

例如:

int a = 3;

3称之为初值

给变量初值的过程称之为初始化

基本数据类型变量的存储

按照作用范围可分为4类:

  • 类级别
  • 实例级别
  • 方法级别 也称之为局部变量
  • 块级别
内存分区:

int a = 100;

1.栈中开辟4字节空间

2.将值100存储到内存区域中

3.将内存区域的地址与变量名a绑定

a 就代表 这块区域中的数据,数据可能会发生变化,所以称之为变量(会变的数据)

Unicode编码

万国码,统一码,支持世界上所有的字符

在字符前面添加\u作为前缀,表示unicode编码

char c = '\u005d'

转义字符

类型转换

自动类型转换(隐式类型转换)

数据范围小的可以自动转为范围大的同类型

实线表示转换过程不会丢失数据

虚线表示转换过程可能丢失数据

强制类型转换

小变大 隐式转换无丢失 short -> int

大变小 强制转换会丢失 int -> short

一样大 隐式强制都可能丢失 例如 float -> int

语法:

double a = 1.1;
float b = (double)a;

常量

在变量定义的前面加上final 关键字 ,就是常量

常量是值不能发生变化的量,一旦赋值,后续不能修改

final int n = 100;
n = 1; //报错 final PAI = 3.1415926;

命名规范,全大写,单词之间用下划线链接

Java - 变量常量数据类型的更多相关文章

  1. Java变量与数据类型之三:数据类型与转义字符

    大家好,小乐又来了,上一篇:乐字节Java变量与数据类型之二:Java常量与变量, 今天接着讲Java变量与数据类型之三:数据类型与转义字符 一.数据类型 1.定义 Java是一种强类型语言,针对每种 ...

  2. 乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符

    大家好,我是乐字节的小乐,这次要给大家带来的是Java变量与数据类型.本文是第一集:Java编程规范,关键字与标识符. 一.编程规范 任何地方的名字都需要见名知意: 代码适当缩进 书写过程成对编程 对 ...

  3. Java基础:Java变量、数据类型、运算符(2)

    1. 标识符和关键字 1.1 标识符 标识符是用来标识类名.对象名.变量名.方法名.类型名.数组名.文件名的有效序列. Java规定,标识符由字母.数字.下划线“_”.美元符号“$”组成,并且首字母不 ...

  4. java 变量及数据类型、原码、反码、补码

    Java基础——变量及数据类型 变量的概念 内存中的一个存储区域 变量名+数据类型 可在同一类型范围内不断变化 为什么定义变量: 用于不断的存放同一类型的常量,并可以重复使用 使用变量注意: 变量的作 ...

  5. java变量、数据类型、运算符

    关键字.保留字.标识符 关键字 Java关键字是对Java编译器有特殊含义的字符串,是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型.类.方法特性等信息 保留字 goto.co ...

  6. Java | 变量 & 常量

    变量 Java是一种强类型语言,每个变量都必须声明其数据类型,变量本质上就是代表一个"可操作的存储的空间",在定义之后空间位置是确定的,但是里面放置什么值是不确定的,我们操作的时候 ...

  7. Java变量, 常量和作用域

    目录 变量 作用域 局部变量 实例变量 类变量 常量 命名规范 视频课程 变量 变量就是可以变化的量 Java是一种强类型的语言, 每个变量都必须声明其类型 Java变量是程序中最基本的存储单元, 其 ...

  8. JAVA:变量,数据类型,运算符,流程控制(简介)<1>

    一.安装和配置jdk 1.jdk是什么? (1).jdk全称是Java Development Kit, Java开发工具包; (2).jdk是sun公司开发的; (3).jdk主要包括:jre(Ja ...

  9. java变量常量

    1. java 变量遵循先声明,再赋值,后使用的原则. 一个变量可以只声明,不赋值,没有问题(只是这个变量没有实际意义,但完全没有问题).但如果想要使用它,那么就一定要给它赋值,而大多数时候我们又不知 ...

随机推荐

  1. Mybatis一级缓存、二级缓存详讲

    Mybatis 一级缓存.二级缓存 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 查询缓存 首先,我们先看一下这个标题“查询缓存”,那就说明跟增.删.改是没有任何关联的,只有在查询 ...

  2. windows10远程桌面 删除IP记录

    注册表位置: HKEY_CURRENT_USER/ Software/ Microsoft/ Terminal Server  client/ servers/ 删除不需要的IP地址即可.

  3. 《Netty Zookeeper Redis 高并发实战》 图书简介

    <Netty Zookeeper Redis 高并发实战> 图书简介 本书为 高并发社群 -- 疯狂创客圈 倾力编著, 高度剖析底层原理,深度解读面试难题 疯狂创客圈 Java 高并发[ ...

  4. 针对上一篇prim最后的完善结果

    edge* Graph::prim(int cur) { if (cur >= this->vertexNum) { return NULL; } int *weight = new in ...

  5. python通过http下载文件的方法

    1.通过requests.get方法 r = requests.get("http://200.20.3.20:8080/job/Compile/job/aaa/496/artifact/b ...

  6. tomcat的jsp页面超过65535,导致500报错

    错误信息 org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: ...

  7. 通过Ajax的访问zuul的跨域问题解决方案

    刚开始在使用jqueryajax跨域请求zuul网关时,在后台发现一直拿不到前台请求的json数据,而前台也一直拿不到后台的响应数据.打开浏览器调试程序发现,本身ajax的POST请求统一都变成了op ...

  8. condense 参数

    " 删除左右空格,中间空格压缩至一格 result = condense( ' abc def ').result = condense( val = ' abc def '). " ...

  9. Solr实现全文搜索

    1.1 Solr是什么? Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器.Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置.可扩展 ...

  10. MongoDB用户验证和权限管理

    官方参考页面: https://docs.mongodb.com/v3.6/tutorial/enable-authentication/ https://docs.mongodb.com/v3.6/ ...