【二】变量和数据类型和运算符【java】
一、预备知识
二进制
二进制数据就是0和1两个数码来表示的数,它的基数为2,进位规则为“逢二进一”,二进制对应两种状态,广泛应用与电子科学。十进制与二进制的转换
在线进制转换工具:https://tool.lu/hexconvert/
2.1. 十进制转二进制:除2取余,逆序排序
2.2. 二进制转十进制:权相加法注释:注释语句不会被执行,不会出现在class文件里面
3.1单行注释:// 后面的全是注释部分
3.2多行注释:/* / 注意多行注释不可嵌套
3.3文本注释:/* */标识符
用来给变量,类,方法以及包进行命名的。
4.1标识符必须是以字母,下划线,美元符号$开头
4.2 标识符其他部分可以是字母,下划线,美元符和数字的任意组合
4.3java标识符大小写敏感,且长度无限制
4.4 标识符不可以是java的关键字
标识符的使用规则:
表示类名的标识符:每个单词的首字母大写,如Man
表示方法和变量的标识符:第一个单词小写,从第二个单词开始首字母大写,称之为“驼峰原则”
二、变量(类似于停车场的车位)
1.变量的本质
可操作的存储空间,空间确定,存放的东西不确定
2.变量的分类和作用域
分为:局部变量,成员变量,静态变量
3.常量(Constants)
常量通常指的是不变的固定的量,用final 表示。常量只能初始化一次
public class testConstants{public static void main(String[] args){PI=3.15;//编译错误,不能再次被赋值!}
}
为了更好的区分和表述,一般将1.2.‘a’等称为字符常量,用final修饰的称为符号常量。
三、基本数据类型
java是一种强类型语言。每个变量都必须声明数据类型,分为基本数据类型和引言数据类型。
java定义了3种基本数据类型
- 数值型:
整数类型:byte(1) short(2) int(4) long(8)
浮点类型: float(4) double(8) - 字符型:char
- 布尔型:boolean
java定义了三种引用数据类型(4个字节)
- 类:class
- 接口:interface
- 数组
1、整型
java语言中整型常量的四种表示形式
- 十进制整数:
- 八进制整数:要求以0开头,如015
- 十六进制整数:要求以0x或0X开头,如0x15
- 二进制数:要求以0b或0B开头,如0b011100011
注意:java语言默认是int ,要定义long的时候要加L
long a=5555;//编译成功,在int范围类(21亿)
long a=5555555555;//编译错误,超出了int能够表示的范围
long a=5555555555L;//编译成功
2.浮点数
java浮点类型常量有两种表示方法
- 十进制数形式:
- 科学技术法:如3.14e0
float类型的数值有一个后缀F或者f,没有此后缀的默认是double类型,也可以直接加D或者d,用来表明为double类型。
float d=1.65;//编译错误,1.65是double类型的浮点常量,不能直接赋值给float
float d=1.65f;//编译成功
3.字符型
字符型占两个字节,‘a’和“a”是不相同的,“a”表示含有一个字符的字符串。char类型用来表示unicode编码表中的字符。用‘\u…’表示。
char c=‘a’;
char d='中';
char e=‘中国’;//编译错误,‘中国’属于字符串,不可以用char定义,可以用String定义
char a=‘\n’//表示换行
System.out.println("a\nb\nc\n")//表示输出a,b,c后各自换行
4.Boolean型
有两个值:true和false
定义:boolean b=true;Boolean c=false;
四、运算符
- 算数运算符
属于二元运算符,需要两个操作数才能运算,基本的加减乘除。
自增自减只需要一个操作数。
整数运算
若两个操作数有一个为long,则结果也为long
若没有long时,结果为int,即使操作数权威short,byte,结果也是int
浮点运算
两个操作数有一个为doule,则结果是double
如果两个操作数都是float,结果才是float
取模运算
其操作数可以为浮点数,一般使用整数,结果是“余数”,“余数”符号和左边操作数相同,如7%3=1,-7%3=-1,7%-3=1
int a=3;
int b=a++;//执行完后,b=3,先赋值,后自增b=++a;//执行胡b=4,先自增,再赋值
- 赋值及其扩展赋值运算符
int a=6;//把6赋值给a
int b=7;a+=b ;//等价与a=a+b;a-=b ;//等价与a=a-b;a*=b ;//等价与a=a*b;a/=b ;//等价与a=a/b;
- 关系运算符
如:
int a=3;
int b=4;
Boolean c=a>b;
System.out.println(c);//打印false
- 逻辑运算符
逻辑运算符的操作数和运算结果都是Boolean值
Boolean a=true;
Boolean b=false;
System.out.println(a&b);//与,有一个为false,结果为false
System.out.println(a|b);//或,有一个true,结果为true。
System.out.println(!b);//非,结果为true
System.out.println(a^b);//异或,相同false,不同为true。结果为true
- 位运算符
按位与:有0则0,全1为1;
按位或:有1则1,全0则0;
按位异或:相同为false,不同为true,
int a=7;
int b=8;
System.out.println(a&b);//与,有0则0,结果为0
System.out.println(a|b);//或,有1则1,结果为15
System.out.println(~b);//非,结果为-9
System.out.println(a^b)//按位异或,相同为false ,结果为15
//移位
int c=5<<2;
System.out.println(c);//相当于5*2*2,结果为20;
System.out.println(40>>3);//相当于40/2/2/2,结果为8;
- 字符串连接符
“+”运算符两侧的操作数只要有一个是字符串类型,系统会自动将另一个操作数转换为字符串然后再进行连接。
int a=12;
System.out.println("a="+a);//输出结果为a=12
//条件是string,不能是char,若为char,任然是加号,不是连接符。
char c=‘h’;
char d=‘i’;
System.out.println(c+d);//结果是209
System.out.println(""+c+d);//通过""+把整个运算换成字符串运算。
- 条件运算符
语法格式:x?y:z
若x的值为true,则结果为y,若x为false,则结果为z; - 运算符优先级
注意:
逻辑非>逻辑与>逻辑或。如a||b&&c的运算结果为:a||(b&&c)
遇到复杂的运算可以用小括号来简便。
五、数据类型的转换
- 自动类型转换
容量小的数据可以转换为容量大的数据
实线表示无损数据丢失的自动类型转换,虚线表示转换时有可能会有精度 的损失。
特例:整型常量是int类型,但是可以自动转换为byte,short,char,只要不超过其表示范围
int a=23;
long b=a;//int可以转换为long
int c=b;//编译错误,long不可以转换为int
//特例:整型常量是int类型,但是可以自动转换为byte,short,char,只要不超过其表示范围。
short b=12;//合法
short b=123456;//非法,超出了short的表示范围
- 强制类型转换
有可能出现损失的情况,用()里面的类型表示想要转换的目标类型。
double x=3.14;
int nx=(int)x;//强制转换为int ,丢掉小数部分,不会四舍五入,值为3;
- 基本类型转换时常见的错误和问题
操作比较大的数时,要留意是否有溢出,尤其是整数操作时。
int money=1000000000;//10亿
int year=10;
int total=money*year;
System.out.println("total="+total);//返回的total值为负数,int范围是正负21亿,超过了这个范围,因此结果会转为int值,再转为long值,发生数据丢失
//怎么处理
long total=money*(long)year;//第一种,强制转换;
long total=1L*money*year;//1L为long类型,即把整个表达式转换为long类型;
- 获取键盘输入
import java.util.Scanner;
public class main{public static void main(String[] args){Scanner a=new Scanner(System.in);int b=a.nextInt();//把键盘输入的数赋值给bSystem.out.println(b);}
}
【二】变量和数据类型和运算符【java】相关推荐
- java基础学习 --- 第二节 变量、数据类型和运算符
java基础学习 - 第二节 变量.数据类型和运算符 一.变量 1.变量就是会发生改变的数据,程序运行时,这些数据以变量的形式被保存到计算机的内存中.如图 2.使用变量的步骤: 声明变量 - ...
- Scala 系列(二)—— 基本数据类型和运算符
一.数据类型 1.1 类型支持 Scala 拥有下表所示的数据类型,其中 Byte.Short.Int.Long 和 Char 类型统称为整数类型,整数类型加上 Float 和 Double 统称为数 ...
- Java中的变量、数据类型和运算符
1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小 ...
- JAVA基础——第二章,变量,数据类型和运算符
一,变量声明及使用 申明变量再赋值 int money; //声明变量 monry = 100; //赋值 声明变量并赋值 int money = 100; //声明变量并赋值 二,JAVA常用数据类 ...
- 第二章 变量、数据类型和运算符
一.变量: 1.根据数据类型在内存中分配一个合适的空间并给他命名,即"变量名" 2.将数据存储到这个空间中, 3.从空间中取出数据,可以使用变量名来获得. 二.java中的数据类型 ...
- 《Java疯狂讲义》第3章(数据类型和运算符):博主李俊德的阅读笔记与知识拓展
一.问题背景 博主在准备应聘的笔试.面试时,再次采用了多年以来的Java工具书<Java疯狂讲义>,并决定在每章详细复习后都要在博客中写下详细的阅读笔记. 二.阅读笔记与知识拓展--< ...
- 【JavaSE】02-变量、数据类型和运算符
二. 变量.数据类型和运算符 2.1 变量 2.1.1 变量的声明 type varName [=value][,varName[=value]...]; //[ ]中的内容为可选项,即可有可无 数据 ...
- JAVA学习脚印2: 数据类型和运算符
JAVA学习脚印2: 数据类型和运算符 本节将记录java中的数据类型和运算符. 1. java中的数据类型 java中变量的数据类型有两种:基本类型(primitive)和引用(reference) ...
- java异或运算结果数据类型_java中的数据类型和运算符的总结归类。
首先学习java肯定先要了解java的发展史,以及java的特点,常见的dos命令,jdk的安装,如何开发java程序等等一下概念行的东西,这里面我都不一一说了. 今天这一章主要想总结一下java中的 ...
- double类型怎么取余_数据类型和运算符
数据类型和运算符 1.进制 1.1文件存储单位 任何数据在计算机中都是以二进制的形式存在的,二进制早期由电信号开关演变而来 . 一个电信号或者一个二进制位统称为Bit位,8个Bit位为一组组成 ...
最新文章
- python自动补全库_叼炸天的库! 自动补全 Python 代码,能节省 60% 敲码时间
- linux 文件 跳板机_shell实现跳板机
- linux查看机器品牌信息,dmidecode查看linux硬件信息
- HarmonyOS快速开发入门
- ubuntu18.04(bionic) 配置阿里数据源
- python指定位置写入文件_Python从文件中读取指定的行以及在文件指定位置写入
- c#下不同命名空间的引用(一个project使用另外一个project的名称空间)
- 提示未检测到 oracle,Oracle RAC [INS-40406] 未检测到现有的 Oracle Grid Infrastructure 软件...
- Linux下MySQL表名区分大小写
- 哎呀!可能有弹出式窗口拦截器生成Gmail无法打开该网页。如果您使用弹出式窗口拦截器,请将其关闭以便打开窗口。...
- Qt 萤石云 /萤石云官方Demo二次开发 Qt 5.12.3 / H5/萤石云官方Demo
- 《2020年中国互联网网络安全报告》:90%的小程序存在安全隐患
- 新版标准日本语中级_第三十二课
- 理解快速排序 | 打通算法学习的任督二脉
- Android利用TranslateAnimation 动画实现上下平移横线(模拟人脸识别扫描,二维码识别扫描)
- Mac报错:TSM AdjustCapsLockLEDForKeyTransitionHandling_ISSetPhysicalKeyboardCapsLockLED Inhibit
- oracle函数之NULLIF
- Tkinter Cursors
- Android获取百度音乐的音乐下载地址和歌词下载连接
- 爽啊!写了一个网页:首字母索引的单词(十分垃圾,简单的不得了)