有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (1) 个答案

  1. # 1 楼答案

    请使用Byte.parseByte(String)执行此操作:

    public static byte[] toByteArray(String[] arr) {
        byte[] res = new byte[arr.length];
    
        for (int i = 0; i < arr.length; i++)
            res[i] = Byte.parseByte(arr[i]);
    
        return res;
    }
    

    p.S.Java中,字节值是[-128;128)。因此"128"将抛出java.lang.NumberFormatException: Value out of range. Value:"128" Radix:10。您必须决定要对这些值执行什么操作:抛出异常,因为使用数据无效;或者将其转换为最接近的字节值,如"128" -> 127;或者甚至忽略这些值。此代码可能如下所示:

    public static byte[] toByteArray(String[] arr) {
        byte[] res = new byte[arr.length];
    
        for (int i = 0; i < arr.length; i++) {
            try {
                res[i] = Byte.parseByte(arr[i]);    
            } catch(Exception e) {
                res[i] = // TODO action for incorrect value
            }
        }
    
        return res;
    }