自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Java基礎(chǔ)入門(mén)篇—Java變量類(lèi)型的轉(zhuǎn)換和運(yùn)算符

開(kāi)發(fā) 前端
本文主要介紹了數(shù)據(jù)類(lèi)型的轉(zhuǎn)換分別有自動(dòng)類(lèi)型轉(zhuǎn)換和強(qiáng)制類(lèi)型轉(zhuǎn)換,也介紹了這兩種類(lèi)型轉(zhuǎn)換的用法,需要注意的是強(qiáng)制類(lèi)型轉(zhuǎn)換可能造成信息的丟失。

一、變量類(lèi)型的轉(zhuǎn)換

(一)自動(dòng)類(lèi)型轉(zhuǎn)換也叫隱式類(lèi)型轉(zhuǎn)換,指的是兩種數(shù)據(jù)類(lèi)型在轉(zhuǎn)換的過(guò)程中不需要顯式地聲明。需要滿(mǎn)足兩個(gè)條件:第一是兩種數(shù)據(jù)類(lèi)型相互兼容,第二是目標(biāo)類(lèi)型取值范圍要大于源類(lèi)型。

1.當(dāng)把一個(gè)表數(shù)范圍小的數(shù)值或變量直接賦給另一個(gè)表數(shù)范圍大的變量時(shí),系統(tǒng)將可以進(jìn)行自動(dòng)類(lèi)型轉(zhuǎn)換。

圖片

例如:

double d = 3;        //int自動(dòng)轉(zhuǎn)換為double類(lèi)型3.0再賦值。
3+1.0; //表達(dá)式的類(lèi)型為所有操作數(shù)的最高類(lèi)型,即double類(lèi)型。

2.當(dāng)把任何基本數(shù)據(jù)類(lèi)型的值和字符串值進(jìn)行連接運(yùn)算時(shí),基本類(lèi)型的值將自動(dòng)類(lèi)型轉(zhuǎn)換為字符串類(lèi)型。

(二)強(qiáng)制類(lèi)型轉(zhuǎn)換也叫顯式類(lèi)型轉(zhuǎn)換,指的是兩種數(shù)據(jù)類(lèi)型之間的轉(zhuǎn)換需要進(jìn)行顯式地聲明。當(dāng)兩種數(shù)據(jù)類(lèi)型不能相互兼容或目標(biāo)類(lèi)型取值范圍小于源類(lèi)型,自動(dòng)類(lèi)型轉(zhuǎn)換就不能進(jìn)行。所以需要強(qiáng)制類(lèi)型轉(zhuǎn)換。

1.當(dāng)把一個(gè)表數(shù)范圍大的數(shù)值或變量直接賦給另一個(gè)表數(shù)范圍小的變量時(shí),范圍將溢出,出現(xiàn)錯(cuò)誤。

例如:

short s = 5;  //5在short的范圍內(nèi),允許賦值,5將被看成是short類(lèi)型的。
s = s + 2; //2是int類(lèi)型,s+2表達(dá)式類(lèi)型為int,賦值給short類(lèi)型,將發(fā)生溢出,報(bào)錯(cuò)。

2.強(qiáng)制類(lèi)型具體格式如下:

目標(biāo)類(lèi)型 變量=(目標(biāo)類(lèi)型)值

例如:

s = (short)(s+2);//將int類(lèi)型強(qiáng)制轉(zhuǎn)換成short類(lèi)型。

需要注意一點(diǎn)就是強(qiáng)制類(lèi)型轉(zhuǎn)換可能會(huì)造成信息丟失。

二、運(yùn)算符

(一)算術(shù)運(yùn)算符

與算術(shù)相關(guān)運(yùn)算符+、-、*、/,就是加減乘除,也被成為四則運(yùn)算。另外還有一個(gè)%稱(chēng)為模數(shù)運(yùn)算符或余數(shù)運(yùn)算符。算術(shù)運(yùn)算符使用上和學(xué)過(guò)的加減乘除一樣,先乘除后加減。

圖片

算術(shù)運(yùn)算符看起來(lái)比較簡(jiǎn)單和容易理解。在實(shí)際使用時(shí)還有很多需要注意的問(wèn)題:

1.在自增++和自減--的運(yùn)算時(shí),如果是運(yùn)算符++或--放在操作數(shù)的前面則是先進(jìn)行自增或自減運(yùn)算,再進(jìn)行其他運(yùn)算。反之,如果運(yùn)算符放在操作數(shù)的后面則是先進(jìn)行其他運(yùn)算再進(jìn)行自增或自減。

例如:

int a=2; //聲明一個(gè)int類(lèi)型變量a并賦值為2
int b=3;//聲明一個(gè)int類(lèi)型變量b并賦值為3
int x=a+b++;//聲明一個(gè)int類(lèi)型變量x
System.out.print("b="+b);
System.out.print("x="+x);

上面代碼輸出結(jié)果是b=4,x=5。具體分析:

首先是定義了3個(gè)int類(lèi)型,其中a=2,b=3,當(dāng)x進(jìn)行a+b++運(yùn)算,因?yàn)檫\(yùn)算符++寫(xiě)在后面,所以是先進(jìn)行運(yùn)算,然后再自增。變量b參與加法運(yùn)算時(shí)值仍然是3,x=5。變量b先進(jìn)行運(yùn)算后自增,b的值為4。

(二)比較運(yùn)算符

數(shù)學(xué)上有大于,小于,等于的比較運(yùn)算符,java也提供這些運(yùn)算符,這些運(yùn)算符稱(chēng)為比較運(yùn)算符。

圖片

例如:

System.out.printf("3>2 結(jié)果%b%n",3>2);
System.out.printf("3>=2 結(jié)果%b%n",3>=2);
System.out.printf("3<2 結(jié)果%b%n",3<2);
System.out.printf("3<=2 結(jié)果%b%n",3<=2);
System.out.printf("3==2 結(jié)果%b%n",3==2);
System.out.printf("3!=2 結(jié)果%b%n",3!=2);

輸出結(jié)果是:

3>2 結(jié)果true
3>=2 結(jié)果true
3<2 結(jié)果false
3<=2 結(jié)果false
3==2 結(jié)果false
3!=2 結(jié)果true

比較運(yùn)算符是對(duì)兩個(gè)數(shù)值或變量進(jìn)行比較,結(jié)果是一個(gè)布爾值true或false。

(三)邏輯運(yùn)算符

邏輯運(yùn)算符用于對(duì)布爾型的數(shù)據(jù)進(jìn)行操作,結(jié)果也是一個(gè)布爾值。在邏輯上“且(AND)”、“或(OR)”、“反相(NOT)”,在java也提供這些邏輯運(yùn)算符,分別是&&(AND)、||(OR)、?。∟OT)。

圖片

例如:

int number=35;
System.out.println(number>30&&number<40);
System.out.println(number>40||number<30);
System.out.println(!(number>40||number<30));

輸出結(jié)果是:

true
false
True

(四)位運(yùn)算符

位運(yùn)算符是對(duì)二進(jìn)制數(shù)的每一位進(jìn)行運(yùn)算的符號(hào),它是專(zhuān)門(mén)對(duì)數(shù)字0和1進(jìn)行操作。

圖片

例如:

計(jì)算5&3=1

圖片

三、總結(jié)

本文主要介紹了數(shù)據(jù)類(lèi)型的轉(zhuǎn)換分別有自動(dòng)類(lèi)型轉(zhuǎn)換和強(qiáng)制類(lèi)型轉(zhuǎn)換,也介紹了這兩種類(lèi)型轉(zhuǎn)換的用法,需要注意的是強(qiáng)制類(lèi)型轉(zhuǎn)換可能造成信息的丟失。

運(yùn)算符包括了算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符。算術(shù)運(yùn)算符是+、-、*、\,還有%模數(shù)運(yùn)算符或余數(shù)運(yùn)算符。詳細(xì)介紹了自增和自減的用法。比較運(yùn)算符是對(duì)兩個(gè)數(shù)值或變量進(jìn)行比較,結(jié)果是一個(gè)布爾值true或false。

邏輯運(yùn)算符對(duì)布爾型的數(shù)據(jù)進(jìn)行操作,結(jié)果也是一個(gè)布爾值。位運(yùn)算符是對(duì)二進(jìn)制數(shù)的每一位進(jìn)行運(yùn)算的符號(hào),它是專(zhuān)門(mén)對(duì)數(shù)字0和1進(jìn)行操作。希望通過(guò)本文的學(xué)習(xí),能夠幫助到你理解數(shù)據(jù)類(lèi)型轉(zhuǎn)換和運(yùn)算符。

責(zé)任編輯:武曉燕 來(lái)源: Java進(jìn)階學(xué)習(xí)交流
相關(guān)推薦

2020-10-29 13:40:52

Java基礎(chǔ)

2023-04-11 10:13:04

Java運(yùn)算符反碼

2020-10-22 13:33:48

Java基礎(chǔ)入門(mén)

2023-03-27 10:04:27

數(shù)據(jù)類(lèi)型浮點(diǎn)型布爾型

2020-10-26 13:46:07

Java基礎(chǔ)入門(mén)篇

2020-11-19 10:36:16

Java基礎(chǔ)方法

2020-11-16 10:19:33

Java

2023-03-13 10:01:27

Java注釋

2009-06-21 13:48:05

ShellLinux運(yùn)算符

2022-01-21 11:26:19

Java結(jié)構(gòu)語(yǔ)句if語(yǔ)句

2020-10-21 08:25:03

Java基礎(chǔ)入門(mén)

2022-03-28 09:31:58

for循環(huán)語(yǔ)句

2022-01-27 09:35:45

whiledo-while循環(huán)Java基礎(chǔ)

2020-11-13 07:22:46

Java基礎(chǔ)While

2009-11-17 09:13:21

PHP運(yùn)算符

2021-01-28 08:34:30

Java對(duì)象定義

2013-08-15 16:48:39

.Net基礎(chǔ)

2020-11-09 10:19:05

Java

2022-03-10 09:33:21

Java數(shù)組初始化

2023-03-06 10:03:05

Java運(yùn)行機(jī)制
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)