程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> (byte)300實際值為44

(byte)300實際值為44

編輯:C++入門知識

java核心卷一 中文 42頁 說: (byte)300實際值為44
下面看看怎麼轉換:


		System.out.println((byte)300);
		System.out.println(Integer.toBinaryString(300));//輸出100101100
		//第二步
		BigInteger i=new BigInteger("00101100",2);//byte只有8位 截取低8位
		System.out.println(i.intValue());//輸出44

第二步用到

BigInteger
可以在各種進制間方便轉換嗎?原來寫那麼多方法都是白費。只是輸入應該是一個字符串。

先想如果java支持0b110101010來表示二進制的話 就直接

System.out.print(0b110101010)
就好,可是不支持 說是因為太長。

百度 java二進制轉十進制 找到: 點擊打開鏈接

摘抄備份:


java 二進制轉為十進制,十進制轉為二進制

2013-02-07 19:48:23| 分類: Java俱樂部 |舉報 |字號 訂閱

import java.math.BigInteger;
public class Hello{ public static void main(String args[]){ //10進制->2進制 String a = "121";//輸入數值 BigInteger src = new BigInteger(a);//轉換為BigInteger類型 System.out.println(src.toString(2));//轉換為2進制並輸出 //2進制->10進制 String b = "1111001";//輸入數值 BigInteger src1= new BigInteger(b,2);//轉換為BigInteger類型 System.out.println(src1.toString());//轉換為10進制並輸出結果 /* 由此可見,有2點要注意: 1. BigInteger的構造函數 BigInteger(String src)默認參數字符串為10進制數值 BigInteger(String src, int x)第2個參數x是指定第一個參數src的進制類型
2. toString方法 toString()默認把數值按10進制數值轉化為字符串。 toString(int x)把數值按參數x的進制轉化為字符串*/ } }
另: 將十進制轉換成二進制的算法如下:
1.給定一個數;
2.根據十進制轉換二進制的思想:把這個數除以2若為單數則為1,為偶數則為0,直到最後一個數為1為止。所以我們要做的就是用你給定的這個數除以2,如果結果為奇數則r=1,否則r=0;如此循環下去,直到這個數〉=1。
3.然後把r的值送到一個數組裡面。最後把這個數組裡面的內容從後面打印出來就可以了。
import java.util.Scanner;
public class Hi {
public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("請輸入一個十進制需要轉換為二進制的正整數"); int n=sc.nextInt(); int r; int i=0; int[] a=new int[20]; do{ if(n%2==1) r=1; else r=0; a[i]=r; n/=2; i++; }while(n>0); System.out.println("十進制轉換為二進制後:"); for(int j=i-1;j>=0;j--){ System.out.print(a[j]); } } }


另: 二進制轉換成十進制 import java.util.*; public class Hello{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); System.out.print("請輸入一個二進制數"); int s = sc.nextInt(); int sum = 0; int i = 0; while(s != 0){ sum = (int) (sum + s % 10 * (Math.pow(2,i))); s = s / 10; i ++; } System.out.println("轉換為十進制後為:" + sum); } }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved