java代碼編譯成二進制庫
① java中如何將十進制數字轉化成二進制
如果表達小於2^31-1的正數代碼如下:
public void binaryToDecimal(int n){
int t = 0; //用來記錄位數
int bin = 0; //用來記錄最後的二進制數
int r = 0; //用來存儲余數
while(n != 0){
r = n % 2;
n = n / 2;
bin += r * Math().pow(10,t);
t++;
}
System.out.println(bin);
}
使用字元串的拼接(+)來實現大於2^31-1的數,代碼如下:
public void binaryToDecimal(int n){
String str = "";
while(n!=0){
str = n%2+str;
n = n/2;
}
System.out.println(str);
}
可以右移後再與0x01進行&運算得到第一位的數字判斷判斷它的第幾位上是0,第幾位上是1,代碼如下:
class ByteMove
{
public static void main(String[] args)
{
int i = 7;
move(i);
}
static void move(int num){
for(int i= 0;i<6;i++){
System.out.println("第"+(i+1)+"位:" + (num >> i & 0x01));
}
}
}
② java編譯器把java程序編譯成虛擬機可以識別的二進制代碼,稱為什麼
由java編譯器把源文件編譯成虛擬機可以識別的二進制代碼稱為位元組碼。
而位元組碼是由java解釋器去解釋執行的。
③ java里怎樣把文件轉換成二進制
轉換文件成為二進制數據並保存的Java代碼:
取出數據並還原文件到本地的java代碼:
[java]view plain//讀取資料庫二進制文件
publicvoidreaderJpg()throwssqlException
{
connection=connectionManager.getconn();//自己連接自己的資料庫
StringsqlString="selectimagesfromsave_imagewhereid=4";//從資料庫中讀出要還原文件的二進制碼,這里我讀的是自己的資料庫id為4的文件
Filefile=newFile("E:\1.jpg");//本地生成的文件
if(!file.exists())
{
try{
file.createNewFile();
}catch(Exceptione){
e.printStackTrace();
}
}
try{
byte[]Buffer=newbyte[4096*5];
statement=connection.prepareStatement(sqlString);
resultSet=statement.executeQuery();
if(resultSet.next())
{
FileOutputStreamoutputStream=newFileOutputStream(file);
InputStreamiStream=resultSet.getBinaryStream("images");//去欄位用getBinaryStream()
intsize=0;
while((size=iStream.read(Buffer))!=-1)
{
System.out.println(size);
outputStream.write(Buffer,0,size);
}
}
}catch(Exceptione){
e.printStackTrace();
}
}
④ 求java十進制轉二進制代碼
很高興回答你的問題
希望對你有幫助
Java實現十進制轉換二進制的一段代碼0
1.復制代碼package work;
2.import java.util.*;
3.public class jin{
4.public static void main(String[]args){
5.Scanner input=new Scanner(System.in);
6.int num; //聲明一個num變數用來存貯獲取鍵盤輸入的數值
7.int[] tnum=new int[10]; //聲明一個數組,用來存貯二進制的每一位數字
8.System.out.print(\"請輸入一個100以內的整數:\");
9.num=input.nextInt(); //從鍵盤獲取數值
..
.. /*循環,用來檢測輸入的數值是否大於100*/
while(num>100){
System.out.print(\"數字不能大於100!重新輸入:\");
num=input.nextInt();
}
/*循環結束*/
int n=num; //聲明n變數用並賦值輸入的值
int x=0; //聲明x變數,用來控制數組
/*循環,用來計算十進制轉換為二進制數後的每一位*/
while(n>=1){
tnum[x]=n%2; //將結果逐一存貯在數組內
n=n/2;
x++;
}
/*循環結束*/
System.out.print(num+\"轉換成二進制是:\");
x--; //這里x變數需要「--」才能與數組標簽匹配
/*for循環控制數組序列反轉輸出,從後往前*/
for(int i=x;i>=0;i--){
System.out.print(tnum[i]);
}
/*循環結束*/
}
}
⑤ java代碼實現:十進制轉換成2進制
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@SuppressWarnings("unchecked")
public class FileUtil implements Comparator{
public static void main(String[] args) throws Exception{
File file = new File("f:/f1.txt");
BufferedReader br = new BufferedReader(new FileReader(file));
String rl = null;
StringBuffer bf = new StringBuffer();
StringBuffer num2 = null;
int num10 = 0;
while(( rl = br.readLine()) != null)
{
rl = rl.trim();
num10 = Integer.parseInt(rl);
num2 = new StringBuffer();
while(num10 > 0){
num2.insert(0, num10%2);
num10 /=2;
}
bf.append(num2).append("\r\n");
}
br.close();
BufferedWriter out = new BufferedWriter(new FileWriter(new File("f://f2.txt")));
out.write(bf.toString());
out.flush();
out.close();
}
public int compare(Object a1, Object a2)
{
String s1 = (String)a1;
String s2 = (String)a2;
for(int i=0; i<(Math.min(s1.length(), s2.length())); i++)
{
if(s1.charAt(i) > s2.charAt(i))
return 1;
else if(s1.charAt(i) < s2.charAt(i))
return -1;
}
return s1.length()>s2.length()?1:(s1.length()<s2.length()?-1:0);
}
}
⑥ 如何用JAVA編寫一段代碼把整數轉換成2進製表示
十進制到其他進制的轉換
十進制整數轉換成二進制整數,返回結果是一個字元串:
Integer.toBinaryString(int
i);
⑦ 用JAVA寫個程序:把自然數轉換成二進制
public class t
{
public static void main(String args[])
{
String str=javax.swing.JOptionPane.showInputDialog("Please input the number:");
int i=Integer.parseInt(str);
String j=Integer.toBinaryString(i);
System.out.println(j);
System.exit(0);
}
}
⑧ JAVA如何把源代碼轉成二進制數
先說說,匯編幾乎和二進制編碼(機器碼是一一對應的),基本上相當於給每個機器指令起了個名字,增加可讀性。
c語言跟匯編的區別相對比較小,基本就是用匯編中的跳轉(JMP,JNE等),比較(CMP)等命令來表示控制、分支、循環等結構,把函數轉換成標簽,用寄存器來存放參數,用棧來保存局部變數等。
C++比c語言多了許多特性,主要是面向對象特性(比如繼承,多態,模板等),當然翻譯成匯編語言的難度也就更大。
而java和C#並不是直接編譯成匯編語言,而是它們專有的中間語言(和匯編比較像,但是優點是與機器無關,可以跨平台,只要在該平台編寫了對應的解釋器,缺點是速度稍慢)
以上是我的理解,可能並不十分准確,僅供參考。
⑨ 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);
/*