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):基本数据类型,变量类型
目录 --- 基本数据类型 --- 变量类型 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用 ...
随机推荐
- C++ OpenSSL 之一:编译和使用
1.官网 https://www.openssl.org/ 当前使用版本为OpenSSL 1.1.1c 2.编译 ①下载后解压,假设解压位置为/home/openssl-1.1.1c ②./confi ...
- thinkphp5连接sql server
我用的环境是phpstudy,php版本是5.6,thinkphp连接sql server 方法如下: 1.修改database.php文件里的数据库信息 2.进入php扩展目录.我的是“E:\php ...
- elastic常用工具
elasticsearch 常用工具: elasticsearch-dump :备份 elasticsearch-head :数据展示.操作平台 elasticsearch-head github 地 ...
- centos7 下 yum 安装Nginx
centos7 下 yum 安装和配置 Nginx 添加yum源 Nginx不在默认的yum源中,可以使用epel或者官网的yum源,这里使用官网的yum源 rpm -ivh http://nginx ...
- nc用法
NC 在客户端 和 服务器执行------------------------------------------------------------------------------------- ...
- Python实现十大经典排序算法(史上最简单)。
十大排序算法(Python实现)一. 算法介绍及相关概念解读 算法分类十种常见排序算法可以分为两大类: 非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn), ...
- Amoeba读写分离(MySQL)
实验操作环境: centos服务器 三台机器 role: 192.168.189.129 master-主 192.168.189.130 master-从 192.168.189.131 ...
- LeetCode 568. Maximum Vacation Days
原题链接在这里:https://leetcode.com/problems/maximum-vacation-days/ 题目: LeetCode wants to give one of its b ...
- 基于react开发package.json的配置
项目依赖 react网页开发的3件套: react, react-dom, react-router-dom, redux, react-reduxreact的UI组件库: antd(pc端), an ...
- js 判断字符串是否为空或是否全为空格
判断字符串是否为空 if (str == "") { } 判断字符串是否为空且不能全为空格 if (str.match(/^[ ]*$/)) { } 第二种方式不仅可以校验空格 ...