java基本数据类型的变量
一、整型变量
短整型(short)、整型(int)和长整型(long),它们都可以定义整型变量,但是由于分配的内存空间不同,所能表示的数据的长度也不同。
我们可以定义并初始化一个整型变量:
- int a=100;
那么变量a最大只能表示2147483647。如果赋值超过这个数,程序会报错,我们要根据实际需要使用不同的整型类型。下面我们重新给a赋值
- a=2147483647;
这个数据比较大,对我们而言比较难以看清,JDK 7之后整型数据我们可以使用以下这种方式赋值
- a=2_147_483_647;
另外我们定义整型时一般使用十进制表示,java也提供了定义为八进制和十六进制来表示:
八进制就是只能表示:0 1 2 3 4 5 6 7 ,
注意:八进制必须以0开头。如:
- 0123 045 098 046
十六进制:
- 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
注意:以十六进制表示时,需以0x或0X开头,如:
- 0x8a 0Xff 0X9A 0x12
还有就是对长整型的初始化和赋值时要主意,一般我们定义一个整数时默认都是整型,为了表示长整型我们需要在整数的后面加一个英文字符'L'或者'l',由于英文字符'l'和数字‘1’比较类似,所以我们习惯使用大写字母'L'。如:
- long a=9L;
- long b=156L;// 长整型必须以L做结尾
二、浮点型
浮点数类型有float(32位)和double(64位)两种类型,分别叫做单精度浮点数和双精度浮点数,表示浮点数时,要在后面加上f(F)或者d(D),用指数表示也可以。注意:由于小数常量的默认类型为double型,所以float类型的后面一定要加f(F),用以区分。初始化和赋值时除了支持一般的小数的写法外,也支持科学记数法。如以下例子都是可以的。
- float a=2.4f;
- float b=2e3f,
- double c=3.6d;
- double d=3.44;
- float e=5.022e+23f
上面这些定义都是合法的。
三、布尔类型
布尔类型比较特殊,它的值只有两种:true和false。布尔类型一般用于条件判断。与C语言不同,C语言可使用整数0表示false,而非0表示true,但是在java中不可以这样,表示布尔型只能使用true和false,例子如下:
- boolean flag=true;
- boolean f=false;
四、字符常量
字符常量是由英文字母、数字、转义序列、特殊字符等的字符所表示,它的值就是字符本身,在java中使用单引号“’”表示,每个字符占用两个字节。如:
'a' '8' '\t' '\u0027'
可以使用全球统一编码(Unicode),码值加上\u来表示对应的字符, 采用Unicode的目的是为了覆盖全球各种各种语言使用的不同的语言标记,分为UTF-8和UTF-16。
五、字符串常量
字符串是自然界描述信息很常用的一种形式,因此使用非常频繁。Java中使用用双引号括起来进行标示,如:
- "Hello World"
- "123"
- "Welcome \nXXX"
使用字符串时需要注意,我们存储信息时会带上一些特殊的方便人类阅读的格式标记,比如回车换行显示、或者直接想标示一个双引号,这是就需要使用转义字符的机制来实现,因此转义字符的目的是在字符串中标示一些特殊的标记信息,格式使用一个\开头,形如:
- \r表示接受键盘输入,相当于按下了回车键;
- \n表示换行;
- \t表示制表符,相当于tab键;
- \b表示退格键,相当于Back Space;
- \'表示单引号,\"是双引号;
- \\表示一个斜杠“\”。
比如上面的"Welcome \n XXX",它的运行结果是:
- Welcome
- XXX
六、特殊的null值
null字面量:用null表示,表示为空,注意在逻辑上来说:0不是空。null值在定义对象赋初值时使用。
七、变量的作用域变量的分类
与C语言不同,java的所有的变量都必须在类中声明,不允许有变量不在类中声明的,当然变量也是是有具体的使用范围的,这种范围就是变量的作用域。声明在class的根语句块的变量是具有全局作用域,就是在本程序内部任意位置都访问得到,被称作全局变量。局部变量会覆盖全局变量。如下面这个例子:
- public class Tt {
- int i = 100;// 类的全局变量
- public void test() {
- System.out.println("访问的是全局变量i=" + i);
- int i = 50;// main方法中的全局变量,覆盖全局变量
- System.out.println("访问的是局部变量i=" + i);
- }
- public static void main(String[] args) {
- Tt tt=new Tt();
- tt.test();
- }
- }
我们声明了一个全局变量i,这个变量i的作用域在整个类中都可以访问,然后我们定义了一个普通方法test,在这个方法体中,我们也可以访问全局变量i,但是如果我在这个方法里也声明了一个同名的变量i,也就是局部变量,那么局部变量i会覆盖覆盖全局变量i,所以第一个i输出的是100,而第二个i输出的时50,你可以在main方法中调用这个方法测试一下。
八、常量
常量就是在程序运行中不变的值,使用final关键字进行声明。
- final double rate = 3.1415926;
在java中也可以用public static final修饰一个自定义字面量,或者使用枚举类型也可以表示一组字面量,枚举类型我们后面章节讨论。final关键字和public关键字我们也会在后面再讲解
- public static final String ONEEDUNAME=”java and android 自学网”;//定义一个字符串常量
java基本数据类型的变量的更多相关文章
- java 基本数据类型与变量类型
Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. byte,short,char,int,long,float,double Java语言支持的变 ...
- Java之数据类型,变量赋值
Java中的基础数据类型(四类八种): 1.整数型 byte----使用byte关键字来定义byte型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值.byte型是整型中所分配的内存空间是最 ...
- Java基础-数据类型及变量
Java基本语法 1.标识符(zhi) 含义:名字 类名.对象名.方法名.变量名.常量名-- 一个合法的标识符的组成:数字.字母._和$ 注意事项: 不能重复 不能以数字开头 区分大小写 不能以关键字 ...
- Java学习笔记(基本数据类型和变量命名规则)
java基本数据类型 变量 1.变量就是可变的量. 2.常量就是不可变的量. 3.字面量:Java的变量和常量中存放的具体的数据成为字面量. 变量 命名规则: (1)首字母是英文字母.$或下划线,由字 ...
- 关于变量,JAVA基本数据类型,运算符类型,如何从控制台接收输入的数据
一,变量与变量的使用 1.变量是在程序运行中其值可以改变的量,java程序的一个基本存储单元 2.变量的使用 变量类型+变量名 二,JAVA基本数据类型 1.数值型a.整点类型(byte.short. ...
- Java知多少(10)数据类型及变量
Java 是一种“强类型”的语言,声明变量时必须指明数据类型.变量(variable)占据一定的内存空间.不同类型的变量占据不同的大小. Java中共有8种基本数据类型,包括4 种整型.2 种浮点型. ...
- Java基础(二):基本数据类型和变量类型
一.java基本数据类型: 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间.内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. Java 的两 ...
- 160817、Java数据类型以及变量的定义
Java 是一种强类型的语言,声明变量时必须指明数据类型.变量(variable)的值占据一定的内存空间.不同类型的变量占据不同的大小. Java中共有8种基本数据类型,包括4 种整型.2 种浮点型. ...
- Java 学习(4):基本数据类型,变量类型
目录 --- 基本数据类型 --- 变量类型 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用 ...
随机推荐
- 《linux就该这么学》课堂笔记17 分离解析、DHCP、电子邮件系统
1.动态主机配置协议(DHCP,Dynamic Host Configuration Protocol) 自动管理局域网内主机的IP地址.子网掩码.网关地址及DNS地址等参数,可以有效地提升IP地址的 ...
- windows下apache + mod_wsgi + python部署flask接口服务
windows下apache + mod_wsgi + python部署flask接口服务 用python3安装虚拟环境 为啥要装虚拟环境? 原因1:安装虚拟环境是为了使项目的环境和全局环境隔离开,在 ...
- 字符串format()方法的基本使用
<模板字符串>.format(<逗号分隔的参数>) 其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果.槽用大括号({})表示,对应format() ...
- python字典中显示中文
#coding=utf-8import jsondict={'title':"这是中文"}print json.dumps(dict,ensure_ascii=False,enco ...
- java任务调度之Timer定时器
定时器相信大家都不陌生,平时使用定时器就像使用闹钟一样,我们可以在固定的时间做某件事,也可以在固定的时间段重复做某件事,今天就来分析一下java中自带的定时任务器Timer. 一.Timer基本使用 ...
- [RN] React Native 权限申请 react-native-permissions
React Native 权限申请 react-native-permissions 一.安装 npm i -S react-native-permissions link: react-native ...
- Input输入框内容限制
该文百度的嘻嘻,原文:Input输入框内容限制 输入大小写字母.数字.下划线: <input type="text" onkeyup="this.value=thi ...
- netlify搭建静态站+https
转载[大雄的学习人生 - 原文地址:https://www.cnblogs.com/codernie/p/9062104.html] 一.使用github或者gitlab登陆netlify 首先,打开 ...
- [算法模板]Kruskal重构树
[算法模板]Kruskal重构树 kruskal重构树是一个很常用的图论算法.主要用于解决u->v所有路径上最长边的最小值,就是找到\(u->v\)的一条路径,使路径上的最长边最小. 图片 ...
- Redis与Mysql双写一致性方案解析
一 前言 首先,缓存由于其高并发和高性能的特性,已经在项目中被广泛使用.在读取缓存方面,大家没啥疑问,都是按照下图的流程来进行业务操作 但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存 ...