激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - java——Byte類/包裝類的使用說明

java——Byte類/包裝類的使用說明

2021-08-11 11:48小妖精_淚汪汪 Java教程

這篇文章主要介紹了java——Byte類/包裝類的使用說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

byte類/包裝類

包裝類是一個常量類,可實例化 (意義:幫助對應的數據類型進行數據類型)

java數據類型包括內置數據類型和引用數據類型

內置數據類型 :含6中數字類型(四個整數型,兩個浮點型),一種字符類型,還有布爾類型

byte

byte:數據類型占用1個字節(jié)=8bit,以二進制補碼表示的整數

取值范圍:默認值為0,最小值為-128(-2^7);最大值是127(2^7-1)

數據類型 關鍵字 內存中占用字節(jié)數 取值范圍 默認值
布爾型 boolean 1 true/false false
字節(jié)型 byte 1 -128~127 0
短整型 short 2 -2^15~2^15-1 0
整型 int 4 -2^31~2^31-1 0
長整型 long 8 -2^63~2^63-1 0
字符型 char 2 0~2^16-1 '\u000'
單精度浮點型 float 4 1.4013e-45~3.4028e+38 0.0f
雙精度浮點型 double 8 4.9e-324~1.7977e+308 0.0d

用途:byte類型用在大型數組中節(jié)約空間,主要代替整數,因byte變量占用內存的空間只有int類型的1/4;不足是這個數取值范圍大,byte不能全部替代

java——Byte類/包裝類的使用說明

常用方法

a.構造方法

?
1
2
public byte(byte value)
public byte(string s)

b.普通方法+類方法(對數據類型做轉換)

?
1
2
3
4
5
6
7
8
piublic byte bytevalue()
public short shortvalue()
public int intvlaue()
public long longvalue()
public float floatvalue()
public double doublevalue()
public string tostring()
public static string tostring(byte b)

包裝類和基本數據類型的對象關系

java——Byte類/包裝類的使用說明

注:常量類是否可以被實例化主要看構造方法

?
1
2
3
4
5
6
7
8
9
10
11
12
package com.youceedu.test.wrapper;
public class testbyte {
 public static void main(string[] args) {
 // todo auto-generated method stub
 byte a = 9;
 byte b = -7;
  string result = byte.tostring(a);
 byte c = new byte((byte) 9);
 system.out.println(c.floatvalue());
 system.out.println(result+b);
 }
}

補充:java的byte數據類型總結||二進制的原碼、反碼和補碼

二進制的原碼、反碼和補碼

原碼就是二進制定點表示法,即最高位為符號位,“0”表示正,“1”表示負,其余位表示數值的大小。

反碼表示法規(guī)定:正數的反碼與其原碼相同;負數的反碼是對其原碼逐位取反,但符號位除外。

補碼表示法規(guī)定:正數的補碼與其原碼相同;負數的補碼是在其反碼的末位加1。

正數

首位表示符號位,原碼、反碼和補碼都是本身。

負數

如何計算負數在計算機中的二進制(即它的補碼)?

首先對負數的絕對值取反,然后+1得到負數的補碼。

例如:byte a=-5

-5的絕對值=5 5的二進制表示是 0000 0101 取反得到 1111 1010 +1運算得到 1111 1011 ,那么1111 1011就是-5的補碼。

也可以這樣,用原碼計算

例如:byte a=-5 原碼表示 1000 0101

計算其反碼為 1111 1010

計算其補碼為 1111 1011

所以 -5在計算機中表示為1111 1011

byte

byte的取值范圍為什么是-128~127

byte 表示一個字節(jié),8bit,其中最高位是符號位。因此,最大值為 0111 1111,即127;最小值是負數為 1000 0000(規(guī)定)【其他數據類型的最大最小值也可以這樣以此類推】。在計算機中二進制都是以補碼的形式表示的,我們也可以這樣來理解,為什么最小是-128

最小負數補碼表示為:1000 0000

由補碼計算原碼:

1000 0000 作-1 運算 得到 0111 1111,取反 1000 0000 因為負數的補碼是其絕對值取反,即10000000為最小負數的絕對值,而10000000的十進制表示是128,所以最小負數是-128

byte與ascii

標準ascii 碼也叫基礎ascii碼,使用7 位二進制數(剩下的1位二進制為0)來表示所有的大寫和小寫字母,數字0 到9、標點符號, 以及在美式英語中使用的特殊控制字符。

ascii碼表示的范圍是0~127 剛好byte類型可以覆蓋到。因此byte類型和ascii可以互相轉換。可以根據ascii對照表進行查看http://tool.oschina.net/commons?type=4

當byte類型的變量的值實時是在''單引號里面的時候,該byte變量的值表示的是ascii碼,可以通過ascii對照表查看其真實的數值。

比如:

?
1
2
3
4
5
6
7
8
9
10
11
public class bytetest {
 public static void main(string args[]) {
  byte a = 'a';
  byte b = 'b';
  byte c = '4';
 
  system.out.println("a=" + a);
  system.out.println("b=" + b);
  system.out.println("c=" + c);
 }
}

輸出:

?
1
2
3
a=97
b=66
c=52

byte&0xff的作用

byte->int 因為byte是8位,而int是32位,當byte類型轉換為int類型的時候,會自動用符號位補足高位。例如 -5 1111 1011 轉為int 類型會表示為 1111 1111 1111 1111 1111 1111 1111 1011 其表示的十進制的數值不變。

有的時候,我們只想保留二進制的補碼形式,我們可以用byte&0xff。0xff是十六進制,默認是int類型,其二進制表示為 0000 0000 0000 0000 0000 0000 1111 1111 將byte類型的數值跟0xff作&操作,可以將高24位變?yōu)?,保留低8位。當然對應的十進制數也發(fā)生了變化。(相當于將byte變成無符號int類型)

例如:byte a=-5 ((int)-5)&0xff

?
1
2
3
4
1111 1111 1111 1111 1111 1111 1111 1011
&
 0000 0000 0000 0000 0000 0000 1111 1111
= 0000 0000 0000 0000 0000 0000 1111 1011

int強轉換為byte

例如:

int a=234 byte b=(byte)a -->得到b=-22 因為234已經超出了byte類型的表示范圍,強轉會直接丟棄高位,保留低8位。

int類型的234的二進制表示為:1110 1010【高24位全是0】 強轉為byte類型,舍棄高24位得到1110 1010 ,第一位為符號位1,得到一個負數-22。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。如有錯誤或未考慮完全的地方,望不吝賜教。

原文鏈接:https://blog.csdn.net/zhangyi_1027/article/details/80917665

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 中文字幕 亚洲一区 | 最近高清无吗免费看 | 亚洲午夜不卡 | 国产精品一区2区3区 | 你下面好大好硬好想要 | 一级片999 | 99re66热这里只有精品8 | 毛片免费在线 | 大胆在线日本aⅴ免费视频 美国黄色毛片女人性生活片 | 天天透天天狠天天爱综合97 | 色人阁在线视频 | 91一级毛片| 成人在线视频在线观看 | 久久国产亚洲视频 | 免费a级网站| chinesexxx少妇露脸 | 视频一区二区三区在线播放 | 啪啪激情| 亚洲国产精品99 | 亚洲成人精品区 | 91久久九色| 日韩欧美综合在线 | 九九热视频免费 | 羞羞视频2023| 视频在线亚洲 | 国产精品探花在线观看 | 免费国产一区二区视频 | 久久av免费 | 欧美粗暴analvideos | 在线a亚洲视频播放在线观看 | 91在线色视频 | 中文字幕综合在线观看 | 欧美.com| 国产四区 | 久久毛片免费观看 | 国产精品jk白丝蜜臀av软件 | 免费黄色小网站 | 天天操很很操 | 久久久成人免费视频 | 久久久久久久免费精品 | 九九热精品免费视频 |