Java变量、常量、数据类型和运算符
内存是如何存放数据的
电脑使用内存来记忆计算时所用的数据的,内存存放数据就像我们在宾馆开房间一样,有单人间、双人间、总统套间等不同的类型,客户入住不同类型的房间就像是数据根据需求(即数据类型)在内存中为它申请一个适合的空间
怎样找到存入内存的数据呢??有人会想到内存地址,这是计算机寻址时才会用到的;内存地址相对于人来说不方便记忆,这时候我们可以对不同的数据类型开辟不同大小的内存空间,并给每一个所开辟的空间进行命名(即定义变量名),通过这些定义的变量名我们可以快速找到所需要的数据
使用变量的步骤:
- 声明变量,就是根据不同的数据类型在内存中开辟空间
- 赋值,把数据存储到对应的内存空间中
- 使用变量,将对应内存中的数据取出使用、重新赋值等操作
//类名使用帕斯卡命名法,每个词字母都要大写
public class Final{public static void main(String [] args){//定义一个常量PAIfinal double PAI=3.14;//变量名使用驼峰命名法,首个单词字母小写其他单词首字母大写double roundRadius = 5.5;//计算面积double area=PAI*roundRadius*roundRadius;//计算周长double perimeter=PAI*roundRadius*2;System.out.println("圆的面积:"+area+"\n"+"圆的周长:"+perimeter);}
}
常量的使用
常量顾名思义就是在程序执行的过程中它的值不会发生变化的量
字符串常量:在程序中用双引号引起来的内容
整数常量:就是数学中所有的整数
浮点型常量:所有的小数
字符常量:用单引号引起来的内容,单引号中只能放单个的数字、字母、标点符号等等
布尔常量:这玩意儿只有两个值,就是true和false
空常量:也就是null
注:1、常量名称通常都是全部大写
2、不同字符之间建议使用下划线("_")间隔开
3、常量只能被赋值一次,在定义常量的时候就对其进行初始化
变量的命名规则
- 只能包含数组,字母,下划线和$符号
- 变量名定义是一定要严格区分大小写
- 不能使用Java中已经存在的关键字(目前Java中有53个关键字,其中有48个关键字,例如void,switch,两个保留字goto,const,三个特殊直接量true,false,null)
建议: 1、最好不要用中文直接定义变量名
2、变量取名最好是见名知意
3、使用驼峰命名方法(就是第一个单词的首字母小写,后面其余的首字母都
大写)
Java中基本的常用运算符
操作符 |
描述 |
例子 |
+ |
加法 - 相加运算符两侧的值 |
A + B 等于 30 |
- |
减法 - 左操作数减去右操作数 |
A – B 等于 -10 |
* |
乘法 - 相乘操作符两侧的值 |
A * B等于200 |
/ |
除法 - 左操作数除以右操作数 |
B / A等于2 |
% |
取余 - 左操作数除以右操作数的余数 |
B%A等于0 |
++ |
自增: 操作数的值增加1 |
B++ 或 ++B 等于 21 |
-- |
自减: 操作数的值减少1 |
B-- 或 --B 等于 19 |
自动类型转换
自动类型转换:Java程序在执行的时候,精度小的类型自动向精度大的数据类型转换
数据类型按精度大小排序:
char > int > long > float > double
byte > short > int > long > float > double
自动类型转换规则
1、在表达式中如果一个操作数为double类型,则整个表达式可以提升为double类型
2、满足自动类型转换的条件:两种类型相互兼容(如整型和浮点型)、目标类型精度大
于源类型精度
public class Change{public static void main(String [] args){int num = 14;double sum = num;System.out.println(sum);}
}
输出结果:
强制类型转换
形式:(类型名)表达式,如int b = (int)10.2;
关系运算符
操作符 |
描述 |
例子 |
== |
检查如果两个操作数的值是否相等,如果相等则条件为真。 |
(A == B)为假。 |
!= |
检查如果两个操作数的值是否相等,如果值不相等则条件为真。 |
(A != B) 为真。 |
> |
检查左操作数的值是否大于右操作数的值,如果是那么条件为真。 |
(A> B)为假。 |
< |
检查左操作数的值是否小于右操作数的值,如果是那么条件为真。 |
(A <B)为真。 |
>= |
检查左操作数的值是否大于或等于右操作数的值,如果是那么条件为真。 |
(A> = B)为假。 |
<= |
检查左操作数的值是否小于或等于右操作数的值,如果是那么条件为真。 |
(A <= B)为真。 |
Boolean类型
boolean(布尔)类型只有两个值:true 和 false ,一般用于存储关系运算符的计算结果
例:表达式(3+40%6)>(9/2*3)的结果是什么? 结果:false
运算符的优先级
优先级 | 运算符 | 结合性 |
---|---|---|
1 | ()、[]、{} | 从左向右 |
2 | !、+、-、~、++、-- | 从右向左 |
3 | *、/、% | 从左向右 |
4 | +、- | 从左向右 |
5 | «、»、>>> | 从左向右 |
6 | <、<=、>、>=、instanceof | 从左向右 |
7 | ==、!= | 从左向右 |
8 | & | 从左向右 |
9 | ^ | 从左向右 |
10 | | | 从左向右 |
11 | && | 从左向右 |
12 | || | 从左向右 |
13 | ?: | 从右向左 |
14 | =、+=、-=、*=、/=、&=、|=、^=、~=、«=、»=、>>>= | 从右向左 |
注:当表达式中的运算符比较多并且自己无法确定执行运算符的优先级时,可以
用小括号(即“()”)来控制一下顺序
Java变量、常量、数据类型和运算符相关推荐
- java基础学习 --- 第二节 变量、数据类型和运算符
java基础学习 - 第二节 变量.数据类型和运算符 一.变量 1.变量就是会发生改变的数据,程序运行时,这些数据以变量的形式被保存到计算机的内存中.如图 2.使用变量的步骤: 声明变量 - ...
- 3、java中的数据类型和运算符
数据类型 数据类型是对数据存储在内存中位置的一种抽象表示,java的数据类型总体上分为两大类:基本数据类型和引用数据类型. 1.基本数据类型 基本数据类型是语言本身定义的,数据结构上有说基本数据类型表 ...
- 第二章 变量、数据类型和运算符
一.变量: 1.根据数据类型在内存中分配一个合适的空间并给他命名,即"变量名" 2.将数据存储到这个空间中, 3.从空间中取出数据,可以使用变量名来获得. 二.java中的数据类型 ...
- Java中的变量、数据类型和运算符
1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小 ...
- JAVA基础——第二章,变量,数据类型和运算符
一,变量声明及使用 申明变量再赋值 int money; //声明变量 monry = 100; //赋值 声明变量并赋值 int money = 100; //声明变量并赋值 二,JAVA常用数据类 ...
- JAVA学习脚印2: 数据类型和运算符
JAVA学习脚印2: 数据类型和运算符 本节将记录java中的数据类型和运算符. 1. java中的数据类型 java中变量的数据类型有两种:基本类型(primitive)和引用(reference) ...
- java异或运算结果数据类型_java中的数据类型和运算符的总结归类。
首先学习java肯定先要了解java的发展史,以及java的特点,常见的dos命令,jdk的安装,如何开发java程序等等一下概念行的东西,这里面我都不一一说了. 今天这一章主要想总结一下java中的 ...
- 【JavaSE】02-变量、数据类型和运算符
二. 变量.数据类型和运算符 2.1 变量 2.1.1 变量的声明 type varName [=value][,varName[=value]...]; //[ ]中的内容为可选项,即可有可无 数据 ...
- 《Java疯狂讲义》第3章(数据类型和运算符):博主李俊德的阅读笔记与知识拓展
一.问题背景 博主在准备应聘的笔试.面试时,再次采用了多年以来的Java工具书<Java疯狂讲义>,并决定在每章详细复习后都要在博客中写下详细的阅读笔记. 二.阅读笔记与知识拓展--< ...
- double类型怎么取余_数据类型和运算符
数据类型和运算符 1.进制 1.1文件存储单位 任何数据在计算机中都是以二进制的形式存在的,二进制早期由电信号开关演变而来 . 一个电信号或者一个二进制位统称为Bit位,8个Bit位为一组组成 ...
最新文章
- 洛谷 P1583 魔法照片
- nosql介绍、memrcached介绍、安装memcached、查看memcachedq状态
- Java并发编程实战~ThreadLocal
- html 自动适应手机屏幕大小,HTML5 canvas自适应手机屏幕大小的一种解决方案
- 2019年2月数据库流行度排行: PostgreSQL攀至历史新高
- k8s-controller manager原理分析
- 【转】《从入门到精通云服务器》第三讲-配置与升级云服务器
- B - 最短路径问题
- 基于GEE使用Landsat 8和Landsat 5影像计算RSEI
- 利用Python爬取公交地铁数据(TransBigData版)
- 网页中插入视频与音频---HBuilder
- 导入的java文件不显示文字_java 引入自定义字体font后出现的硬盘吃光的问题
- CISP-PTE是什么证书,CISP-PTE证书有什么用?
- matlab GUI制作拼图小游戏
- 使用Metasploit对MSSQL渗透测试步骤——学习笔记
- 队测 逆序对 permut
- 分子影像有哪些最新发表的毕业论文呢?
- Android:RecyclerView滑动到边缘时的光晕效果
- 汉诺塔游戏《算法很美》
- 手机上的廉价快感,真的得戒掉
热门文章
- Linux运维之LNMP架构
- linux docker重启nginx,记录一次docker导致宿主机重启故障解决方法
- python函数参数为excel_关于Excel,你一定用的到的36个Python函数
- 两化融合贯标补贴!湖北省13市两化融合贯标补贴补助及申请条件、流程汇编大全
- Gox语言的指针类型及其操作-GX12
- 偏差-方差分解,学习和验证曲线评估模型
- ArcGIS多时序栅格图层空间范围不一致
- 新疆农业大学计算机考研科目,2021新疆农业大学考研初试科目调整通知,两个科目调整...
- git 常用简化软件开发和发布流程(二)
- 【有利可图网】绿色好心情!绿色系配色方案!