⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decimaltohex.java

📁 这是我亲自实现的十进制转化为十六进制的程序,虽然api中有转化的库函数,但这是一个简洁而又健壮的程序,希望大家参考一下
💻 JAVA
字号:

import javax.swing.JOptionPane;


public class DecimalToHex{
	
	public static void main(String[] args) {
		
		String sa = JOptionPane.showInputDialog(null,"Enter the decimal number please!","Decimal to hex",JOptionPane.QUESTION_MESSAGE);
		
		int a =Integer.parseInt(sa);
		
		 
		
		String m = convertDecimalToHex (a);
		 
		String k = "" ;
		
		 
		for (int i = 0;i<m.length();i++)
         k +=	m.charAt(i);
	 JOptionPane.showMessageDialog(null,"The decimal number in hex is "+k,"Decimal to hex",JOptionPane.INFORMATION_MESSAGE);
		 
	}
	
	public static String convertDecimalToHex (int a){
		
		StringBuffer strBuf = new StringBuffer(0);
		
		int x=0;
		if (a<0){
		a=-a;
		x=1;
		}
		
		
		int k = 0;
		
		while (a>=16){
		
		k = a%16 ;
		
		
		
		if(k>9){
			
			switch (k){
				
				case 10: strBuf.append('A');
				break;
				case 11: strBuf.append('B');
				break;
				case 12: strBuf.append('C');
				break;
				case 13: strBuf.append('D');
				break;
				case 14: strBuf.append('E');
				break;
				case 15: strBuf.append('F');
				break;
			}
		}
		
		else  strBuf.append(k);
		
		if (a%16 ==	0){
			a=(a-16)/16;
			a++;
		}
		else  a = (a -k)/16;
			
		}
		if (a>9)
		switch (a){
				
				case 10: strBuf.append('A');
				case 11: strBuf.append('B');
				case 12: strBuf.append('C');
				case 13: strBuf.append('D');
				case 14: strBuf.append('E');
				case 15: strBuf.append('F');
				break;
			}
		else  strBuf.append(a);
		if (x==1)
		strBuf.append('-');
		
		String s= strBuf.toString();
		
		String t = "";
		
		for (int j = s.length()-1;j>=0;j--)
			
		t = t+s.charAt(j);	
		
		return t;
	}
	
	
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -