当前位置: 代码迷 >> Java相关 >> 十六进制转换成十进制????????????
  详细解决方案

十六进制转换成十进制????????????

热度:484   发布时间:2008-04-19 23:06:44.0
十六进制转换成十进制????????????
程序代码:
package wuyu;

import java.util.Scanner;

public class ww {
    public static void main(String[] args) {
        //System.out.println("请输入一个十六进制数");
        Scanner in = new Scanner(System.in);
        int h = in.nextInt();
        ww(h);
    }

    public static void ww(int h) {
        System.out.println(h);
     
    int  i = Integer.valueof("h",16);
        System.out.println( +i);
    }
}

-----------------------------------------------------
我写的程序报错了,好像“h”有问题,大家帮帮我啊??
搜索更多相关的解决方案: 十六进制  十进制  

----------------解决方案--------------------------------------------------------
帮下我忙哇。。在线等待。。。谢谢了!
----------------解决方案--------------------------------------------------------
已解决
package javaapplication33;
import java.util.*;
/**
*
* @author Administrator
*/
public class Main {

    /**
     * @param args the command line arguments
     */
   
        
    public static void main(String[] args) {
        System.out.println("请输入一个十六进制数");
        Scanner in = new Scanner(System.in);
        String h = in.next();
        ww(h);
    }

    public static void ww(String h) {
        System.out.println(h);
     
    int  i = Integer.valueOf(h,2);
        System.out.println( +i);
    }

        // TODO code application logic here
    }
.valueOf(String s, int radix)
          返回一个 Integer 对象,该对象中保存了用第二个参数提供的基数进行解析时从指定的 String 中提取的值。
把h弄成String型的就对了.哦.
----------------解决方案--------------------------------------------------------
回复 3# 的帖子
哦知道了,我的  int h = in.nextInt();
有问题,应该改成     String h = in.next();
--------------------------------------------
谢谢你!
----------------解决方案--------------------------------------------------------
还有一种方法:
---------------------------
异处理方法:

package qiuhe;



import java.io.*;



public class Untitled1 {

    public static void main(String[] args) {

        String s = "";

        int sum = 0;

        int i = 0;

        System.out.println("please input a line");

        try {

            BufferedReader in = new BufferedReader(new InputStreamReader(System.in));

            s = in.readLine();

        } catch (IOException e) {

            e.printStackTrace();

        }

        int digitnum = 0;

        for (i = 0; i < s.length(); i++) {

            switch (s.charAt(i)) {

            case '0':

                digitnum = 0;

                break;

            case '1':

                digitnum = 1;

                break;

            case '2':

                digitnum = 2;

                break;

            case '3':

                digitnum = 3;

                break;

            case '4':

                digitnum = 4;

                break;

            case '5':

                digitnum = 5;

                break;

            case '6':

                digitnum = 6;

                break;

            case '7':

                digitnum = 7;

                break;

            case '8':

                digitnum = 8;

                break;

            case '9':

                digitnum = 9;

                break;

            case 'A':

                digitnum = 10;

                break;

            case 'B':

                digitnum = 11;

                break;

            case 'C':

                digitnum = 12;

                break;

            case 'D':

                digitnum = 13;

                break;

            case 'E':

                digitnum = 14;

                break;

            case 'F':

                digitnum = 15;

                break;

            }

            sum += digitnum * Math.pow(16, s.length() - i);

        }

        System.out.println("you have entered:" + sum);

    }

}
----------------解决方案--------------------------------------------------------
  相关解决方案