java轉二進位,javaint轉二進位

本文目錄一覽:

java里怎樣把文件轉換成二進位?

轉換文件成為二進位數據並保存的Java代碼:

取出數據並還原文件到本地的java代碼:

[java] view plain copy//讀取資料庫二進位文件

public void readerJpg() throws SQLException

{

connection=connectionManager.getconn();//自己連接自己的資料庫

String sqlString=”select images from save_image where id=4″;//從資料庫中讀出要還原文件的二進位碼,這裡我讀的是自己的資料庫id為4的文件

File file=new File(“E:\\1.jpg”);//本地生成的文件

if(!file.exists())

{

try {

file.createNewFile();

} catch (Exception e) {

e.printStackTrace();

}

}

try {

byte[] Buffer = new byte[4096*5];

statement=connection.prepareStatement(sqlString);

resultSet = statement.executeQuery();

if(resultSet.next())

{

FileOutputStream outputStream = new FileOutputStream(file);

InputStream iStream = resultSet.getBinaryStream(“images”);//去欄位用getBinaryStream()

int size=0;

while((size=iStream.read(Buffer))!=-1)

{

System.out.println(size);

outputStream.write(Buffer,0,size);

}

}

} catch (Exception e) {

e.printStackTrace();

}

}

java怎麼存儲二進位

1、利用紙和筆進行計算十進位的小數轉換為二進位小數,主要是利用小數部分乘2,取整數部分,直至小數點後為0。下面以十進位的0.625為例,將它轉化成二進位將小數部分0.625乘2,取整數部分1,如圖:用剩餘的小數部分0.25乘2,取整數部分0,如圖:將剩餘的小數部分0.5乘2,取整數部分。

2、移位位運算中大多數操作都是向左移位和向右移位在Java中,這對應著這兩個操作符,示例如下:1234567891011/*000000011/*000000011/*111111111111111111111111111100004=1111111111111。

3、可以運用jdk工具監控java應用性能,再配合jmeter進行了一個長時間的加壓,在加壓過程中重點關注了系統資源的使用情況D:\ProgramFiles(x86)\Java\jdk1.8.0_111\bin這個目錄下的工具jps-ListstheinstrumentedJav。

JAVA編程,請問怎麼將十進位數轉換成二進位輸出,又怎麼將二進位數轉換成十進位輸出?

1、創建java類,TestNumConv.java;

2、編寫java函數,十進位轉二進位;

public static void decimalToBinary(int n) {

String str = “”;

while (n != 0) {

str = n % 2 + str;

n = n / 2;

}

System.out.println(str);

}

3、編寫java函數,二進位轉十進位;

public static void binaryToDecimal(String n) {

System.out.println(Integer.parseInt(n, 2));

}

4、在main方法中,分別調用該兩個函數,執行結果滿足要求;

TestNumConv.decimalToBinary(123);

TestNumConv.binaryToDecimal(“11011”);

java十進位轉二進位代碼怎麼解決?

下面是根據十進位數轉二進位數的演算法所寫的一段Java程序示例代碼:

import java.math.BigDecimal;

public class Test {

public static void main(String[] args) {

Test t = new Test();

double d = 8;

String s = t.decimal2BinaryStr(d);

System.out.println(“十進位數”+d+”轉成二進位數為:”+s);

}

/**

* 十進位數轉二進位數

* @param d 十進位數

* @return 十進位數轉換成二進位的字元串

*/

public String decimal2BinaryStr(double d){

String result = decimal2BinaryStr_Inte(d);

result += decimal2BinaryStr_Deci(d);

return result;

}

/**

* 十進位整數部分轉二進位數

* @param d 十進位數

* @return 十進位整數部分轉換成二進位的字元串

*/

public String decimal2BinaryStr_Inte(double d){

//      return Integer.toBinaryString((int)d);

/*

* 本來利用上面的Integer.toBinaryString(int)就可以得到整數部分的二進位結果,

* 但為了展示十進位轉二進位的演算法,現選擇以下程序來進行轉換

*/

String result = “”;

long inte = (long)d;

int index = 0;

while(true){

result += inte%2;

inte = inte/2;

index++;

if(index%4 == 0){

result+=” “;

}

if(inte==0){

while(index%4!=0){

result+=”0″;

index++;

}

break;

}

}

char[] c = result.toCharArray();

char[] cc = new char[c.length];

for(int i=c.length; i0; i–){

cc[cc.length-i] = c[i-1];

}

return new String(cc);

}

/**

* 十進位小數部分轉二進位

* @param d 十進位數

* @return 十進位小數部分轉換成二進位小數的字元串

*/

public String decimal2BinaryStr_Deci(double d){

return decimal2BinaryStr_Deci(d, 0);

}

/**

* 十進位小數部分轉二進位

* @param d 十進位數

* @param scale 小數部分精確的位數

* @return 十進位小數部分轉換成二進位小數的字元串

*/

public String decimal2BinaryStr_Deci(double d, int scale){

double deci = sub(d,(long)d);

if(deci==0){

return “”;

}

//為了防止程序因所轉換的數據轉換後的結果是一個無限循環的二進位小數,因此給其一個默認的精確度

if(scale==0){

scale = (String.valueOf(deci).length()-2)*4;

}

int index = 0;

StringBuilder inteStr = new StringBuilder();

double tempD = 0.d;

while(true){

if(deci==0 || index==scale){

while(index%4!=0){

inteStr.append(“0”);

index++;

}

break;

}

if(index==0){

inteStr.append(“.”);

}

tempD = deci*2;

inteStr.append((int)tempD);

deci = sub(tempD ,(int)tempD);

index++;

if(index%4 == 0){

inteStr.append(” “);

}

}

return inteStr.toString();

}

/**

* 提供精確的減法運算。

* @param v1 被減數

* @param v2 減數

* @return 兩個參數的差

*/

public static double sub(double v1, double v2) {

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.subtract(b2).doubleValue();

}

}

例如將十進位數1234.5轉成二進位數為:0100 1101 0010.1000

java十進位轉二進位的代碼是什麼?

import java.math.BigDecimal;

public class Test {

public static void main(String[] args) {

Test t = new Test();

double d = 8;

String s = t.decimal2BinaryStr(d);

System.out.println(“十進位數”+d+”轉成二進位數為:”+s);

}

/**

* 十進位數轉二進位數

* @param d 十進位數

* @return 十進位數轉換成二進位的字元串

*/

public String decimal2BinaryStr(double d){

String result = decimal2BinaryStr_Inte(d);

result += decimal2BinaryStr_Deci(d);

return result;

}

/**

* 十進位整數部分轉二進位數

* @param d 十進位數

* @return 十進位整數部分轉換成二進位的字元串

*/

public String decimal2BinaryStr_Inte(double d){

//      return Integer.toBinaryString((int)d);

/*

一、java的簡介

java是由Sun Microsystems公司推出的Java面向對象程序設計語言(以下簡稱Java語言)和Java平台的總稱。

Java由James Gosling和同事們共同研發,並在1995年正式推出。Java最初被稱為Oak,是1991年為消費類電子產品的嵌入式晶元而設計的。

Java被廣泛接受並推動了Web的迅速發展,常用的瀏覽器均支持Javaapplet。另一方面,Java技術也不斷更新。Java自面世後就非常流行,發展迅速,對C++語言形成有力衝擊。

在全球雲計算和移動互聯網的產業環境下,Java更具備了顯著優勢和廣闊前景。2010年Oracle公司收購Sun Microsystems。

java 十進位轉二進位!

十進位數轉二進位數的演算法如下:

1. 十進位整數轉換為二進位整數

十進位整數轉換為二進位整數採用”除2取余,逆序排列”法。具體做法是:用2去除十進位整數,可以得到一個商和餘數;再用2去除商,又會得到一個商和余

數,如此進行,直到商為零時為止,然後把先得到的餘數作為二進位數的低位有效位,後得到的餘數作為二進位數的高位有效位,依次排列起來。

2.十進位小數轉換為二進位小數

十進位小數轉換成二進位小數採用”乘2取整,順序排列”法。具體做法是:用2乘十進位小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又

得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。然後把取出的整數部分按順序排列起來,先取的整數作為

二進位小數的高位有效位,後取的整數作為低位有效位。

下面就給出根據十進位數轉二進位數的演算法所寫的一段Java程序以供大家參考:

import java.math.BigDecimal;

public class Test {

public static void main(String[] args) {

Test t = new Test();

double d = 8;

String s = t.decimal2BinaryStr(d);

System.out.println(“十進位數”+d+”轉成二進位數為:”+s);

}

/**

* 十進位數轉二進位數

* @param d 十進位數

* @return 十進位數轉換成二進位的字元串

*/

public String decimal2BinaryStr(double d){

String result = decimal2BinaryStr_Inte(d);

result += decimal2BinaryStr_Deci(d);

return result;

}

/**

* 十進位整數部分轉二進位數

* @param d 十進位數

* @return 十進位整數部分轉換成二進位的字元串

*/

public String decimal2BinaryStr_Inte(double d){

// return Integer.toBinaryString((int)d);

/*

* 本來利用上面的Integer.toBinaryString(int)就可以得到整數部分的二進位結果,

* 但為了展示十進位轉二進位的演算法,現選擇以下程序來進行轉換

*/

String result = “”;

long inte = (long)d;

int index = 0;

while(true){

result += inte%2;

inte = inte/2;

index++;

if(index%4 == 0){

result+=” “;

}

if(inte==0){

while(index%4!=0){

result+=”0″;

index++;

}

break;

}

}

char[] c = result.toCharArray();

char[] cc = new char[c.length];

for(int i=c.length; i0; i–){

cc[cc.length-i] = c[i-1];

}

return new String(cc);

}

/**

* 十進位小數部分轉二進位

* @param d 十進位數

* @return 十進位小數部分轉換成二進位小數的字元串

*/

public String decimal2BinaryStr_Deci(double d){

return decimal2BinaryStr_Deci(d, 0);

}

/**

* 十進位小數部分轉二進位

* @param d 十進位數

* @param scale 小數部分精確的位數

* @return 十進位小數部分轉換成二進位小數的字元串

*/

public String decimal2BinaryStr_Deci(double d, int scale){

double deci = sub(d,(long)d);

if(deci==0){

return “”;

}

//為了防止程序因所轉換的數據轉換後的結果是一個無限循環的二進位小數,因此給其一個默認的精確度

if(scale==0){

scale = (String.valueOf(deci).length()-2)*4;

}

int index = 0;

StringBuilder inteStr = new StringBuilder();

double tempD = 0.d;

while(true){

if(deci==0 || index==scale){

while(index%4!=0){

inteStr.append(“0”);

index++;

}

break;

}

if(index==0){

inteStr.append(“.”);

}

tempD = deci*2;

inteStr.append((int)tempD);

deci = sub(tempD ,(int)tempD);

index++;

if(index%4 == 0){

inteStr.append(” “);

}

}

return inteStr.toString();

}

/**

* 提供精確的減法運算。

* @param v1 被減數

* @param v2 減數

* @return 兩個參數的差

*/

public static double sub(double v1, double v2) {

BigDecimal b1 = new BigDecimal(Double.toString(v1));

BigDecimal b2 = new BigDecimal(Double.toString(v2));

return b1.subtract(b2).doubleValue();

}

}

例如將十進位數1234.5轉成二進位數為:0100 1101 0010.1000

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/245566.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:09
下一篇 2024-12-12 13:09

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論