java数据类型和运算符_java的数据类型和运算符

首先引入概念:

1.bit就是位,也叫比特位,是计算机表示数据最小的单位

2.byte就是字节

3.1byte=8bit ,0001 1100,一般用两个16进制来显示,所以我们经常看到1个字节显示为 1c

4.1byte就是1B

JAVA中的数值类型不存在无符号的,它们的取值范围是固定的,不会随着机器硬件环境或者操作系统的改变而改变。实际上,JAVA中还存在另外一种基本类型void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。

变量的数据类型

Java是一门强类型的编程语言。

基本数据类型:数值型:整数类型(byte,short,int,iong)

浮点类型(float,double)

字符型:(char)

布尔型:(boolean)

引用数据类型:类(class)

接口(interface)

数组

枚举(enum)

注解(annotation)

整数类型变量

类型

占用空间

类型

占用空间

字节型byte

8位(一个字节)

短整型short

16位(两个字节)

整型int

32位(4个字节)

长整型long

64位(8个字节)

*在为long类型的变量赋值时需要注意一点,在所附的值后面加一个字母L,说明赋值为long类型。如果赋的值未超过int的取值范围,则可以省略。

浮点数类型变量

类型名

占用空间

Float

32位(4个字节)

double

64位(8个字节)

在java中,一个小数会被默认为double类型的值,因此float类型的变量在赋值时一定要在后面加f或F.

字符类型变量

在给char类型的变量赋值时,需要用一对英文半角格式的单引号把字符括起来。

char c=’a’;

char c=97;具有相同的结果。

布尔类型变量

在java中用boolean表示。

Java中的常量

十六进制整型常量:以十六进制表示时,需以0x或0X开头,如0xff,0X9A。

八进制整型常量:八进制必须以0开头,如0123,034。

长整型:长整型必须以L作结尾,如9L,342L。

字符常量:字符型常量需用两个单引号括起来(注意字符串常量是用两个双引号括起来)。Java中的字符占两个字节。一些常用的转义字符:

①\r表示接受键盘输入,相当于按下了回车键;

②\n表示换行;

③\t表示制表符,相当于Table键;

④\b表示退格键,相当于Back Space键;

⑤\'表示单引号;

⑥\''表示双引号;

⑦\\表示一个斜杠\。

变量的类型转换

1、 自动类型转换

两种数据类型在转换的过程中显式的进行说明。必须满足两个条件:1、两种数据类型彼此兼容,2、目标类型的取值范围大于源类型的取值范围。

*可以进行自动类型转换的情况

1、整数类型之间可以进行转换。如byte类型的数据可以赋值给short int long的变量。short char类型的数据可以赋值给int long 类型的变量,int类型的数据可以赋值给long类型的变量。

2、整数类型转化为flort类型

例如byte int char short类型的数据可以赋值给flort 类型的变量。

1、 其他类型转换为double类型,如char byte short int long flort类型的数据可与赋值给double 类型的变量。

2、 强制类型转换

也叫显式类型转换,当两种类型彼此不兼容,或者目标类型的取值范围小于源类型时,需要进行强制类型转换。具体格式如下

目标类型  变量=(目标类型)值

如:

Public class Example{

Public static void main (String [] args){

Int nam=4;

Byte b=(byte) num;

System.out.println(b);

}

}

Java中的运算符

在java中,运算符可以分为算术运算符、赋值运算符、比较运算符、逻辑运算符、比较运算符和位运算符。

算术运算符

1、 在进行除法运算时当除数和被除数都是整数时,结果也是整数。如果除法运算中有小数参与,结果会是一个小数。

2、 在进行取模运算(%)时,结果的正负取决于被模数的符号。与模数的符号无关。

(1)如果+号用于字符串的时候,那么+号就是一个连接符,并不是做加法功能了。

(2)连接符的作用:让任何的数据都可以与字符串进行拼接。

(3)任何类型的数据与字符串使用连接符连接,那么结果都是字符串类型的数据。

赋值运算符

在赋值过程中,运算顺序从右往左,将右边表达式的结果付给左边的变量。

65b9f269d67a769d4bed9924cc9fc315.png

注意:

1、在java中,为三个变量同时赋值:

Int x,y,z;            int x=y=z=5;  是错的

X=y=z=5;

3、 在使用+=、-=、*=、/=、%=运算符进行赋值时强制类型转换会自动完成,程序不需要做任何显式的说明。

比较运算符

f2a653142dde9c91eeebfa73b17fcba9.png

比较运算符的结果都是返回一个布尔类型的值,只有两种结果true和false。

逻辑运算符

343dc8ec3678036f440f51834d50f2f9.png

1. &(与/逻辑与):可以理解为并且

(1)&(与)符号规律:只有左右变量同时为true,结果才是true;否则就为false。

2. | (或/逻辑或):可以理解为或者

(1) |(或)符号规律:只要两边的布尔表达式有一边为true,那么结果就为true;只有两边同时为false的时候,结果才是false。

3. ^ (异或):可以从“异”字入手去理解

(1)规律:只要两边的布尔表达式结果不一致,结果就为true;如果左右两边的布尔表达式一致,结果就为false。

4. !(非)

(1)规律:结果取反

5. &&(短路与/双与)

(1)短路与和单与符号的相同点和不同点:

①相同点:短路与和单与的运算结果是一致的。

②不同点:使用短路与的时候,如果左边的布尔表达式为false,则不会再运算右边的布尔表达式,从而提高了效率;而 使用单与的时候即使发现左边的布尔表达式为false,还是会运算右边的布尔表达式的。

6. ||(短路或/双或)

(1)短路或和单或的相同点和不同点:

①相同点:短路或和单或的运算结果是一致的。

②不同点:使用短路或的时候,当发现左边的布尔表达式为true时,则不会运算右边的布尔表达式;而使用单或的时 候,当发现左边的布尔表达式结果为true,还是会运算右边的布尔表达式。

位运算符

0b3bcc7a7bd0fdba3a7fd5bf015b6f02.png

1. &(与)

只有参与运算的两位都为1,&运算的结果才为1,否则就为0。

2. |(或)

只有参与运算的两位都为0,|运算的结果才为0,否则就为1。

3. ^(异或)

(1)只有参与运算的两位不同,^运算的结果才为1,否则就为0。

(2)规律:如果操作数A连续异或同一个操作数两次,那么结果还是操作数A。

(3)应用:对数据进行加密。(实例在博客中会单独列出一篇)

4. ~(取反)

就是二进制位按位取反,二进制只有1和0,取反就是1取反是0,0取反是1。

(1)当参与取反的数值是正数时,把对应的值加上负号,再-1。

(2)当参与取反的数值是负数时,把对应的值加上负号,再-1。

(3)负数表现形式就是对应的正数取反再+1,负数的最高位肯定是1。

参考于作者:zhuwei1035838807原文:https://blog.csdn.net/zhuwei1035838807/article/details/78941846

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值