java.lang.Byte.parseByte(String s, int radix) 解析字串引數作為第二個引數指定的基數符號的位元組。
字串中的字元必須是除了第一個字元為ASCII字元減號數位的指定基數的,(由Character.digit(CHAR,INT)是否返回非負值決定)' - '(' u002D')來指示一個負值或一個ASCII加號“+”(' u002B')來表示正值。返回得到的位元組值。
如果有下列情況發生NumberFormatException型別的異常被丟擲:
第一個引數是null或零長度的字串。
基數小於Character.MIN_RADIX或大於Character.MAX_RADIX。
字串的任何字元不是指定基數的數位,除了第一個字元可能是一個減號' - '(' u002D')或加號'+'(' u002B')提供的字串長度比1長以上。
用字串表示的值不是byte型別的值。
以下是java.lang.Byte.parseByte()方法的宣告
public static byte parseByte(String s, int radix) throws NumberFormatException
s - 要分析包含位元組表示一個字串
radix - 使用的基數當解析s
此方法將返回由指定基數的字串引數表示的位元組值。
NumberFormatException - 如果字串中不包含一個可分析的位元組。
下面的例子顯示了lang.Byte.parseByte()方法的使用。
package com.yiibai; import java.lang.*; public class ByteDemo { public static void main(String[] args) { // create 2 byte primitives bt1, bt2 byte bt1, bt2; // create and assign values to String's s1, s2 String s1 = "123"; String s2 = "-1a"; // create and assign values to int r1, r2 int r1 = 8; // represents octal int r2 = 16; // represents hexadecimal /** * static method is called using class name. Assign parseByte * result on s1, s2 to bt1, bt2 using radix r1, r2 */ bt1 = Byte.parseByte(s1, r1); bt2 = Byte.parseByte(s2, r2); String str1 = "Parse byte value of " + s1 + " is " + bt1; String str2 = "Parse byte value of " + s2 + " is " + bt2; // print bt1, bt2 values System.out.println( str1 ); System.out.println( str2 ); } }
讓我們來編譯和執行上面的程式,這將產生以下結果:
Parse byte value of 123 is 83 Parse byte value of -1a is -26