Java 进制转化
【摘要】 import java.util.Scanner; public class jinzhishu { /** * 十进制转化八进制 */ public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc=new Scanner(System.in); //i...
import java.util.Scanner;
public class jinzhishu {
/**
* 十进制转化八进制
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
//int n=sc.nextInt();
String s=sc.next();
//char a=s.charAt(0);
System.out.println(Integer.parseInt(s+" "));
//f(n);
}
public static void f(int n){
int a[]=new int[100];
int temp,i=0;
while(n>0){
temp=n%2;
a[i++]=temp;
n/=2;
}
for(int j=i-1;j>=0;j--){
System.out.print(a[j]);
}
System.out.println();
int result=0,l=0;
for(int k=0;k<i;k++){
result+=a[k]*(int)Math.pow(2,l++);
//System.out.println(result);
}
System.out.println(result);
}
}
import java.util.Scanner;
public class shijinzhi {
/**
* 进制转换 十--->十六
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
System.out.println(Integer.toHexString(n).toUpperCase());
//System.out.println(Long.parseLong(n,16));
}
}
import java.util.Scanner;
//十六-->十进制
public class jinzhi16_10 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.next();
String[] strs = new String[str.length()];
int t = 0;
int j = strs.length-1;
long sum = 0;
for (int i=0;i<=j;i++) {
switch(str.charAt(i)) {
case '0':
t = 0;
break;
case '1':
t = 1;
break;
case '2':
t = 2;
break;
case '3':
t = 3;
break;
case '4':
t = 4;
break;
case '5':
t = 5;
break;
case '6':
t = 6;
break;
case '7':
t = 7;
break;
case '8':
t = 8;
break;
case '9':
t = 9;
break;
case 'A':
t = 10;
break;
case 'B':
t = 11;
break;
case 'C':
t = 12;
break;
case 'D':
t = 13;
break;
case 'E':
t = 14;
break;
case 'F':
t = 15;
break;
}
sum = (long) (Math.pow(16,j-i)*t + sum);
}
System.out.println(sum);
}
}
package jichusuanfa;
public class jinzhizhuanhuan {
public static void main(String[] args)
{
toBin(6);
toBa(60);
toHex(60);
}
//十进制-->二进制
public static void toBin(int num)
{
System.out.print(num + "的二进制为:");
trans(num, 1, 1);
System.out.println();
}
//十进制-->八进制
public static void toBa(int num)
{
System.out.print(num + "的八进制为:");
trans(num, 7, 3);
System.out.println();
}
//十进制-->十六进制
public static void toHex(int num)
{
System.out.print(num + "的十六进制为:");
trans(num, 15, 4);
System.out.println();
}
public static void trans(int num, int base, int offset)
{
if(num == 0)
{
System.out.println(0);
return;
}
char [] chs = {'0', '1', '2', '3',
'4', '5', '6', '7',
'8', '9', 'A', 'B',
'C', 'D', 'E', 'F'};
char [] arr = new char[32];
int pos = arr.length;
while(num != 0)
{
int temp = num & base;
arr[--pos] = chs[temp];
num = num >>> offset;
}
for(int x = pos; x < arr.length; x++)
{
System.out.print(arr[x]);
}
}
}
文章来源: czhenya.blog.csdn.net,作者:陈言必行,版权归原作者所有,如需转载,请联系作者。
原文链接:czhenya.blog.csdn.net/article/details/77609322
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)