導航:首頁 > 編程語言 > java輸入二進制

java輸入二進制

發布時間:2024-03-08 21:50:03

❶ 用java實現輸入兩個二進制數並仍然以二進制輸出其和,不能用先轉十進制相加再轉二進制的方法,請給出代碼

我這個演算法不高,暫時想不到別的方法,你試試吧。

主要是模擬自然語言中的加法運算步驟。

兩個數相加,會得到一個結果,和一個進位的結果,

然後將這個進位的結果後面加0補位,然後再和這個結果相加。如此遞歸,知道進位全部是0為止

publicclass${
publicstaticvoidmain(String[]args){

Strings0="100";//十進制4
Strings1="10100";//十進制20

StringBufferresult=newStringBuffer();
StringBufferjinwei=newStringBuffer();

System.out.println(test(result,jinwei,s0,s1));
}

privatestaticStringtest(StringBufferresult,StringBufferjinwei,Strings0,Strings1){

//沒有進位了就退出
if(s0.length()>0&&s0.indexOf("1")<0){
returns1;
}
//位數補齊
intlen0=s0.length();
intlen1=s1.length();

intminLen=Math.max(len0,len1);

s0=buqi(len0,minLen)+s0;
s1=buqi(len1,minLen)+s1;

for(inti=s0.length()-1;i>=0;i--){
Stringstr0=s0.substring(i,i+1);
Stringstr1=s1.substring(i,i+1);
add(result,jinwei,str0,str1);
}

StringtmpJinwei=jinwei.reverse().toString()+"0";
jinwei.delete(0,jinwei.length());

StringtmpResult=result.reverse().toString();
result.delete(0,result.length());

returntest(result,jinwei,tmpJinwei,tmpResult);
}

privatestaticvoidadd(StringBufferresult,StringBufferjinwei,Stringstr0,Stringstr1){

//00相加為0,不進位
if("0".equals(str0)&&"0".equals(str1)){
result.append("0");
jinwei.append("0");
return;
}

//11相加為0,進位1
if("1".equals(str0)&&"1".equals(str1)){
result.append("0");
jinwei.append("1");
return;
}

//其他情況,相加為1,不進位
result.append("1");
jinwei.append("0");
}

privatestaticStringbuqi(intlen0,intminLen){
Stringtmp="";
for(inti=len0;i<minLen;i++){
tmp+="0";
}
returntmp;
}
}

結果

011000

❷ java怎麼存儲二進制

1、利用紙和筆進行計算十進制的小數轉換為二進制小數,主要是利用小數部分乘2,取整數部分,直至小數點後為0。下面以十進制的0.625為例,將它轉化成二進制將小數部分0.625乘2,取整數部分1,如圖:用剩餘的小數部分0.25乘2,取整數部分0,如圖:將剩餘的小數部分0.5乘2,取整數部分。
2、移位位運算中大多數操作都是向左移位和向右移位在Java中,這對應著>這兩個操作符,示例如下:1234567891011/*000000011/*000000011/*>>4=1111111111111。
3、可以運用jdk工具監控java應用性能,再配合jmeter進行了一個長時間的加壓,在加壓過程中重點關注了系統資源的使用情況D:ProgramFiles(x86)Javajdk1.8.0_111in這個目錄下的工具jps-ListstheinstrumentedJav。

❸ java中二進制怎麼表示

一、二進制的表示方法

有0,1組成。以0b開頭。

代碼的表示方法:

System.out.println(0b100)

二、不同進制的數據表現:

八進制:由0,1,....,7.以0開頭。

十進制:由0,1......,9.默認整數。

十六進制:由0,1,......9,a,b,c,d,e,f(大小寫均可)組成。

十進制:System.out.println(100);

八進制:System.out.println(0100);

十六進制: System.out.println(0x100);

(3)java輸入二進制擴展閱讀

java 判斷二進制文件的代碼:

public static boolean isBinary(File file)

{

boolean isBinary = false;

try {

FileInputStream fin = new FileInputStream(file);

long len = file.length();

for (int j = 0; j < (int) len; j++) {

int t = fin.read();

if (t < 32 && t != 9 && t != 10 && t != 13) {

isBinary = true;

break;

}

}

} catch (Exception e) {

e.printStackTrace();

}

return isBinary;

}

❹ java的數字二進制輸出

首先,java里int是有32位2進制數組成的
我們一般賦值
int
i
=
1;
這個是賦值10進制的數
賦值
2進制要
int
i
=
01;(前面加個0,就表示是2進制數)
賦值16進制(常用)
int
i
=
0x00000001;
(0x表示為16進制數)
3種的值都是1.
要用2進制輸出就是Integer.toBinaryString(i)
拓展:
因為計算機處理位運算速度是非常快的(應該是最快的運算)
所以很多時候,如果有一堆boolean變數需要表示時,
一般只用1個int的數表示,如:
int
i
=
0x0000000f;//表示後4位為1
int
m
=
(i
>>
2)
&
1;
//
其中m就是表示某一位的值,2表示右邊開始數第2位(當然是從第0位開始算的)
這樣就能取具體每一位的值
這種方法在很吃代碼效率的程序中經常遇到
全手打,望支持

閱讀全文

與java輸入二進制相關的資料

熱點內容
單片機的系統組成 瀏覽:610
中國天河二號演算法 瀏覽:647
程序員是怎麼瘋的 瀏覽:598
程序員的貓有幾條命 瀏覽:832
安卓如何把圖片傳到電腦上 瀏覽:895
到去哪兒旅行app怎麼買票 瀏覽:444
工商銀行app房貸還款在哪裡看 瀏覽:761
最新民生通訊app從哪裡下載 瀏覽:378
如何在發簡訊時給自己手機號加密 瀏覽:773
擴展單片機ram定址方式是什麼 瀏覽:318
phpide是什麼 瀏覽:752
單片機相關軟體 瀏覽:818
eclipse如何編譯c11 瀏覽:286
加密游戲app 瀏覽:73
vs2010編譯嵌套太深 瀏覽:980
程序員面試注意事項 瀏覽:740
scratch編譯為h5 瀏覽:208
威聯通套件編譯 瀏覽:233
清刻pdf 瀏覽:984
可編程延時發生器 瀏覽:95