最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談byte和長度為8的boolean數(shù)組互相轉(zhuǎn)換

 更新時間:2016年11月16日 08:51:44   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談byte和長度為8的boolean數(shù)組互相轉(zhuǎn)換。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

由于byte是一個8位字節(jié)

所以可以用它來存放數(shù)組為8的boolean數(shù)組,這些在通信協(xié)議會經(jīng)常用到。這里給出一個java代碼對其互相轉(zhuǎn)換的。

package com.udpdemo.test2;

import java.util.Arrays;

public class Test {

	/**
	 * @param args
	 * 
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(Byte.SIZE);
		
		 byte b = 0x35; // 0011 0101
		 System.out.println(b);
		 System.out.println(Arrays.toString(getBooleanArray(b)));
		 
		 //0x35; // 0011 0101
		 boolean[] array = new boolean[]{false, false, true, true, false, true, false, true};
	 
		 System.out.println(getByte(array));
		 
		
		
	}
	 /**
   * 將byte轉(zhuǎn)換為一個長度為8的boolean數(shù)組(每bit代表一個boolean值)
   * 
   * @param b byte
   * @return boolean數(shù)組
   */
  public static boolean[] getBooleanArray(byte b) {
    boolean[] array = new boolean[8];
    for (int i = 7; i >= 0; i--) { //對于byte的每bit進行判定
      array[i] = (b & 1) == 1;  //判定byte的最后一位是否為1,若為1,則是true;否則是false
      b = (byte) (b >> 1);    //將byte右移一位
    }
    return array;
  }

  /**
   * 將一個長度為8的boolean數(shù)組(每bit代表一個boolean值)轉(zhuǎn)換為byte
   * @param array
   * @return
   *
   */
  public static byte getByte(boolean[] array) {
  	if(array != null && array.length > 0) {
  		byte b = 0;
  		for(int i=0;i<=7;i++) {
  			if(array[i]){
  				int nn=(1<<(7-i));
  				b += nn;
  			}
  		}
  		return b;
  	}
  	return 0;
  }
  
}

以上這篇淺談byte和長度為8的boolean數(shù)組互相轉(zhuǎn)換就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Idea安裝Eslint插件提示:Plugin NativeScript was not installed的問題

    Idea安裝Eslint插件提示:Plugin NativeScript was not installed的問題

    這篇文章主要介紹了Idea安裝Eslint插件提示:Plugin NativeScript was not installed的問題,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • java并發(fā)編程synchronized底層實現(xiàn)原理

    java并發(fā)編程synchronized底層實現(xiàn)原理

    這篇文章主要介紹了java并發(fā)編程synchronized底層實現(xiàn)原理
    2022-02-02
  • 利用Java實現(xiàn)word導(dǎo)入導(dǎo)出富文本(含圖片)的詳細代碼

    利用Java實現(xiàn)word導(dǎo)入導(dǎo)出富文本(含圖片)的詳細代碼

    這篇文章主要為大家詳細介紹了利用Java實現(xiàn)word導(dǎo)入導(dǎo)出富文本(含圖片),文中的示例代碼講解詳細,對大家的學(xué)習或工作有一定的幫助,感興趣的小伙伴可以學(xué)習一下
    2024-02-02
  • SpringBoot + WebSocket 實現(xiàn)答題對戰(zhàn)匹配機制案例詳解

    SpringBoot + WebSocket 實現(xiàn)答題對戰(zhàn)匹配機制案例詳解

    這篇文章主要介紹了SpringBoot + WebSocket 實現(xiàn)答題對戰(zhàn)匹配機制,分別為每個用戶擬定四種在線狀態(tài),通過流程圖給大家展示,需要的朋友可以參考下
    2021-05-05
  • Java利用Socket實現(xiàn)網(wǎng)絡(luò)通信功能

    Java利用Socket實現(xiàn)網(wǎng)絡(luò)通信功能

    在早期的網(wǎng)絡(luò)編程中,Socket是很常見的實現(xiàn)技術(shù)之一,比如早期的聊天室,就是基于這種技術(shù)進行實現(xiàn)的,另外現(xiàn)在有些消息推送,也可以基于Socket實現(xiàn),本文小編給大家介紹了Java利用Socket實現(xiàn)網(wǎng)絡(luò)通信功能的示例,需要的朋友可以參考下
    2023-11-11
  • SpringBoot+MyBatis-Plus實現(xiàn)分頁功能

    SpringBoot+MyBatis-Plus實現(xiàn)分頁功能

    在SpringBoot項目中,結(jié)合MyBatis-Plus(簡稱MP)可以非常方便地實現(xiàn)分頁功能,MP為開發(fā)者提供了分頁插件PaginationInterceptor,只需簡單配置即可使用,本文給大家介紹了SpringBoot+MyBatis-Plus實現(xiàn)分頁功能,文中通過代碼示例給大家介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • Java GZip 基于內(nèi)存實現(xiàn)壓縮和解壓的方法

    Java GZip 基于內(nèi)存實現(xiàn)壓縮和解壓的方法

    這篇文章主要介紹了Java GZip 基于內(nèi)存實現(xiàn)壓縮和解壓的方法,本文給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • Java實現(xiàn)動態(tài)日歷效果

    Java實現(xiàn)動態(tài)日歷效果

    這篇文章主要為大家詳細介紹了Java實現(xiàn)動態(tài)日歷效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • 基于SSM框架實現(xiàn)簡單的登錄注冊的示例代碼

    基于SSM框架實現(xiàn)簡單的登錄注冊的示例代碼

    這篇文章主要介紹了基于SSM框架實現(xiàn)簡單的登錄注冊的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • btrace定位生產(chǎn)故障的方法示例

    btrace定位生產(chǎn)故障的方法示例

    這篇文章主要介紹了btrace定位生產(chǎn)故障的方法示例,文中通過示例代碼介紹的很詳細,相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
    2017-02-02

最新評論

汶川县| 灵石县| 玛沁县| 长丰县| 灵寿县| 佛教| 长子县| 南充市| 正宁县| 石嘴山市| 滨海县| 揭西县| 阿坝县| 大英县| 远安县| 汤阴县| 三明市| 阳新县| 武夷山市| 庄河市| 措美县| 南充市| 固始县| 盖州市| 静宁县| 红桥区| 高台县| 汝州市| 遵化市| 阳江市| 大港区| 文昌市| 铁岭市| 马山县| 灵丘县| 永州市| 金坛市| 璧山县| 扬州市| 万州区| 乐安县|