从这篇文章起开始正式进入正题啦,本文将较为简单的介绍一下变量以及常量。变量,顾名思义,就是可以变的量,常量那么久相反了,常常不变的量就叫常量。_(¦3」∠)

变量

在 Java 中,任何一个变量都得有他的 “种族”(类型)。所以每当你创造一个变量的时候,就需要告诉编译器,它是哪个“种族” 的~

类型 变量名 [ = 值];

》1. 创建这个变量的过程叫声明变量
》2. 第一次给值的这个变量叫初始化
》3. 每一句代码的后面都得加; 结尾,不支持中文
虽然说起名字这种事情是大家的自由,但是 Java 为了防止它不认识你起的名字,也有一些条件限制((2)篇编码规范中有提及)。大驼峰小驼峰就不在细说,这里说一说基本要求:只能以$、字母、下划线、数字来进行组合,且必须遵守命名规范第一条。详情见 java 基础(2)——命名规范(1)
for example:

变量 错误原因
1a 不能以数字开头
$a/a$ 不能以美元符号开头或结尾
_a/a_ 不能以下划线开头或结尾
a*/Hello Ahan 不能有除 $_字母数字外任何字符,空格也不行哦
213 不能为纯数字
public 不能用关键字(上节有解释关键字哈)

变量的数据类型

说到变量的 “种族”,那就得详解一下变量的八种基本变量类型 le~

序号 类型 名称 字节 范围 默认值 说明
0 byte 字节 1 字节 -128~127 0 存储一个字节数据, 超过范围报错
1 short 短整型 2 字节 -2-15~215-1 0 兼容性考虑,一般很少使用到
2 int 整型 4 字节 -2-31~231-1 0 存储整数,常用。
3 long 长整型 8 字节 -2-63~263-1 0 存储长整数,long 性变量后面常加上 L
4 float 单精度浮点型 4 字节 1.4013E-45~3.4028E+38 0.0F 存储浮点数(浮点型通常是小数)后面可带 F 用以区分
5 double 双精度浮点型 8 字节 4.9E-324~1.7977E+308 0.0D 存储浮点数,后面可带 D 用以区分
6 char 字符型 2 字节 0~216-1 '\u0000' 存储一个字符
7 boolean 布尔型 1 字节 true,flase flase 存储一个逻辑变量 (true,false)

注意:这里序号是从 0 开始,一般计算机语言都从 0 开始哦,养成这个习惯吧~
另外: 1 字节 = 8 位,215 = 32768

代码测试

上面的表可能看着比较冷酷无情 (/ω\),我们用代码执行一下看看到底上面说的有没有假话吧~

  • byte
// byte的用法
byte a = 100;
System.out.println("byte变量的值为:" + a);

输出:

反例:

【报错:java.lang.Error】
  • short
// short的用法
short s = 400;
System.out.println(s);
  • int
// int的用法
int a = 1;
System.out.println(a);
  • long
// long的用法
long a = 100L;
System.out.println(a);
  • float
// float的用法
float a = 100;
System.out.println("float输出结果是" + a);

输出结果:

 

因为定义的为浮点型,所以这里输出的值是 100.0
那么我们需要注意的是直接定义float a = 100.0;这个是错误的。

 
【报错:java.lang.Error】

为什么呢?我们接着看下一个变量。

  • double
// double的用法
double a = 100;
System.out.println("double输出结果是" + a);

输出结果:

 

然后我们看看 100.0~

 

诶?好像 double 可以了,那么这就说明小数在 Java 中是默认为双精度的浮点型存储。那么问题又来了,我就想要个 float 的单精度怎么办?
So easy~

 

这时候就很简单了,只需要告诉它我这个是 float 型的就 OK 啦~

  • char
// char的用法
char a = '我';
char b = 'c';
System.out.println(a + "-" +b);
char c = 99;
System.out.println("c=="+c);

输出结果:

有个奇怪的输出冒出来了啊喵,为啥 99 变成 c 了呢?这就涉及到了编码的问题惹,Java 用的是 Unicode 编码(包含 8 位的 ASCII 编码),所以 99 会被转成相应的字符了~ 那这里就附上 ASCII 编码的表格以做记录吧~

 
字符编码表 - DEC 为十进制

以上,阿里嘎多,20190405 from ahanwhite。

Java基础(3)——变量的更多相关文章

  1. Java基础:变量、常量、作用域

    JAVA基础:变量.常量.作用域 变量:可以变化的量.Java是强类型语言,每个变量都必须声明类型. Java变量是程序中最基本的存储单元,要素包括变量名,类型和作用域. //类变量 static s ...

  2. Java基础-成员变量与局部变量

    Java基础-成员变量与局部变量 1.什么是成员变量与局部变量? public class Student {   String name;   int high;   public void stu ...

  3. Java基础之变量

    Java基础之变量 目录 Java基础之变量 1.变量概述 1.1 为什么需要变量 1.2 简单理解 1.3 变量使用注意事项 1.4 程序中+号的使用 1.5 Java数据类型 1.6 整数类型 1 ...

  4. Java基础(变量、运算符)

    第2天 Java基础语法 今日内容介绍 u 变量 u 运算符 第1章 变量 1.1 变量概述 前面我们已经学习了常量,接下来我们要学习变量.在Java中变量的应用比常量的应用要多很多.所以变量也是尤为 ...

  5. java基础——各种变量你晕了不?

    java 中的变量大致分为 成员变量 和 局部变量 两大类. 成员变量:     在类体里面定义的变量称为成员变量.     假设该成员变量有 static keyword修饰.则该成员变量称为 静态 ...

  6. 再回首,Java温故知新(六):Java基础之变量

    变量在所有的编程语言中都有,属于最最基础的部分,学习这部分基本不分语言,变量可分为成员变量和局部变量 Java中变量的声明格式如下,修饰符如果不加,默认是default,关于修饰符,我们会在后续讲到, ...

  7. Java基础总结--变量、运算符总结

    ---变量基本概述----变量作用:就是用来存储数据变量的声明:变量类型 变量名;变量类型---区分不同类型的数据,变量名--按名访问变量变量名(规则):见名识意,第一个字母小写后面驼峰规则变量的作用 ...

  8. java基础(3):变量、运算符

    1. 变量 1.1 变量概述 前面我们已经学习了常量,接下来我们要学习变量.在Java中变量的应用比常量的应用要多很多.所以变量也是尤为重要的知识点! 什么是变量?变量是一个内存中的小盒子(小容器), ...

  9. Java基础(变量数&常量&据类型&类型转换)

    什么是变量: 变量就是一个不固定的数值,它随时会改变,就像银行卡里存的钱一样会变动. 变量的格式:1  数据类型 变量名=变量值:  2  数据类型 变量名: 变量名=变量值: 变量的三大要素:1变量 ...

  10. java基础(四) -变量类型

    在Java语言中,所有的变量在使用前必须声明.声明变量的基本格式如下: type identifier [ = value][, identifier [= value] ...] ; 格式说明:ty ...

随机推荐

  1. Java笔记(一)GC及类加载

    垃圾回收器(GC)    垃圾回收器:java中有一个线程,专门负责JVM中垃圾内存的释放    垃圾:没有引用的内存节点    垃圾回收的算法    注意:垃圾回收有自己的算法,我们是不能控制垃圾回 ...

  2. java下载文件注意点

    前台: 不建议使用ajax,可以使用window.location.href 后台: 三个参数--> response path filename--filename如果要防止乱码,可以用Str ...

  3. django入门-模型-part2

    尊重作者的劳动,转载请注明作者及原文地址 http://www.cnblogs.com/txwsqk/p/6511177.html 完全翻译自官方文档 https://docs.djangoproje ...

  4. 【Map,HashMap,Vector,List】资料汇总

    深入学习HashMap实现原理 http://www.cnblogs.com/xwdreamer/archive/2012/06/03/2532832.html 深入学习Vector原理 http:/ ...

  5. 52.RocketMQ 事务

    今天的博客有点多,因为前几天一直用笔记录,今天都补上了.后面的博客先停一段时间,后面还有dubbo.storm.kafka.solor.nginx.keepalived.fastdfs等内容,只是因为 ...

  6. css的reset和常用的html标签的默认样式整理

    先看下常用的这些标签浏览器的默认样式有哪些: body{ margin: 8px;} hr{ border:1px inset; margin-top:.5em;margin-bottom:.5em; ...

  7. springcloud(八)-Hystrix熔断器

    雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者” ...

  8. poj3250 Bad Hair Day 单调栈(递减)

    Bad Hair Day Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 24420   Accepted: 8292 Des ...

  9. Linux网络编程服务器模型选择之并发服务器(上)

    与循环服务器的串行处理不同,并发服务器对服务请求并发处理.循环服务器只能够一个一个的处理客户端的请求,显然效率很低.并发服务器通过建立多个子进程来实现对请求的并发处理.并发服务器的一个难点是如何确定子 ...

  10. mysql 非安装版的配置

    一直以来都是使用wamp中集成的mysql数据库,今天突然想试试下载一个mysql的zip包进行配置. 一.下载mysql非安装版 下载地址可以到:http://dev.mysql.com/downl ...