Java android将EditText输入字符串转换为等效的十六进制

Java android将EditText输入字符串转换为等效的十六进制,java,android,string,hex,type-conversion,Java,Android,String,Hex,Type Conversion,您好,我希望我的应用程序允许用户输入一个数字1到16,按下一个按钮,然后在屏幕上显示输入数字的十六进制等价物作为toast消息,并在一个字节中存储为十六进制。现在我已经准备好了大部分内容,只是输入字符串到十六进制的转换有问题。有谁能帮我转换一下吗??我相信一定有一个简单的方法可以做到这一点?? 例如,若我输入1,它将在toast中的屏幕上显示0x31,0x31将存储在一个字节中 谢谢 代码: public class MainActivity extends Activity { privat

您好,我希望我的应用程序允许用户输入一个数字1到16,按下一个按钮,然后在屏幕上显示输入数字的十六进制等价物作为toast消息,并在一个字节中存储为十六进制。现在我已经准备好了大部分内容,只是输入字符串到十六进制的转换有问题。有谁能帮我转换一下吗??我相信一定有一个简单的方法可以做到这一点??
例如,若我输入1,它将在toast中的屏幕上显示0x31,0x31将存储在一个字节中

谢谢

代码:

public class MainActivity extends Activity {

private static String toastMsg;
private static String input;



@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    final Button genButton = (Button) findViewById(R.id.btnGen);
    final EditText inputText = (EditText) findViewById(R.id.etxtInput);
    final TextView outputText = (TextView) findViewById(R.id.txtOutput);        

    genButton.setOnClickListener(new OnClickListener() {

        public void onClick(View view){

            input = inputText.getText().toString();

            toastMsg = input;
            toast();
        }
    });


}



//-----TOAST---------------------------------//
public void toast() {

        Toast toast= Toast.makeText(getBaseContext(), toastMsg, Toast.LENGTH_LONG);
        toast.setGravity(Gravity.CENTER, 0, -100);
        toast.show();

    }
}

您只想更改这一行:

toastMsg = input;
为此:

toastMsg = Integer.toHexString(Integer.parseInt(input));

看到这个转换的答案了吗:当toast中输出时,它只显示我输入的数字?如果没有转换,您正在使用的数字示例是什么?数字输入将是0到15,这很奇怪……代码应该正常工作。你可以看看@super-qua的建议并使用这种方法