java - 复杂字符串转换为整数

标签 java string nullpointerexception string-formatting string-conversion

我正在尝试将保存字符串值的数组转换为整数值,我使用了 parseInt 函数,但在执行时收到错误消息 (java.lang.NullPointerException)。我的代码片段如下

public int NumberOfColumns;
public int[][]CMax,CMin;

for (int i = 1; i < datas.length; i++)
     {
         for (int j = 1; j < NumberOfColumns+1; j++)
         {
           CMax[i][j] = Integer.parseInt(datas[i][j]);
           System.out.println(CMax[i][j]);
           System.out.println(datas[i][j]);
         }
     } 

我感觉收到此错误消息是因为我的数据数组包含一些字符,例如“-”。存储在我的数据数组中的一些值的示例包括 0-31、8-*、<4-7>。我怎样才能成功解决这个问题?另外,我需要有关如何从这些字符串中仅提取整数(例如 0-31)的帮助。我想将上限(例如 31)存储到一个单独的整数数组中,将下限(例如 0)存储到另一个整数数组中。

下面是我的数据数组中一些值的摘录。

<0-15> <0-7>
<0-15> <0-7>
<0-15> <0-7>
<32-47> <0-7>
<32-47> <0-7>

最佳答案

正如评论中所指出的,NPE 的唯一可能性是以下其中之一为空。

  • 数据
  • 数据[i]
  • C 最大
  • CMax[i]
  • 列数

希望您可以通过查看这些内容来纠正程序。

注意:Java 数组索引从 0 开始,而不是 1。

关于java - 复杂字符串转换为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20920448/

相关文章:

当应用程序来自后台时,Android fragment 崩溃

java - LibGDX - 使用 ShapeRenderer 时出现 NullPointerException

java - 如何从 Java 访问 Windows 凭据?

linux - 结合 Unix 测试命令 && + ||

java - Junit 和 java 类。

c# - 以 MB 为单位的长度

javascript - 为什么这个正则表达式总是返回 null?

java - 不知道为什么我收到 NullPointerException 错误

java - JTable 的 getSelectedColumn 不适用于更改模型

java - 这是一个不可变的类吗?