Java基础(3)——变量

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Win7下如何打开DOS控制台? a:开始--所有程序--附件--命令提示符 b:开始--搜索程序和文件--cmd...
    逍遥叹6阅读 5,544评论 4 12
  • 前言 说是前言,其实也是本文诞生的目的。随着公司业务的不断增加,功能的快速迭代,app的业务线越来越多,代码体积变...
    梦翔_d674阅读 5,362评论 0 2
  • 淡定,加油!武汉理工大学mba,蒋军虎英语。制定计划。每天报告学习情况。
    皎在云间阅读 1,315评论 0 0
  • Samuel592阅读 643评论 0 0
  • 《海市风铃》 黄云依稀暗影沙, 驼铃咽声自嗟呀。 相思总被无情误, 转身烟消一霎那。
    相山雨晨阅读 1,648评论 6 16

友情链接更多精彩内容