首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法从对象数组加载,因为"this.list“为空

无法从对象数组加载,因为"this.list“为空
EN

Stack Overflow用户
提问于 2022-08-15 22:51:22
回答 1查看 421关注 0票数 -1

当我运行处理时,有时代码可以工作,很多时候我会收到错误"java.lang.NullPointerException:无法从对象数组加载“,因为"this.list”是空的。

我知道这是关于Null指针异常的,但是作为一个新手,我不知道如何重写来解决这个问题。

代码:

代码语言:javascript
复制
import processing.serial.*;

Serial port;
String[] list;
String myString = null;
int ai, bi;
  
void setup(){
  
  fullScreen();
  //size(800, 500);
  
  port = new Serial(this, "COM6", 9600);
  port.clear();
  
  myString = port.readStringUntil('\n');
  myString = null;
  
}

void draw(){
  
  background(0);
  textSize(30);
  
  while (port.available() > 0) {
    myString = port.readStringUntil('\n');
  } 
    list = split(myString, ',');
    
    float a, b;
    PFont f = createFont("Arial", 64);
    textFont(f);
    textSize(90);
    
    a = float(list[0]);
    b = float(list[1]);
    ai = round (a);
    bi = round (b);
    println("Displacement: " + ai + " mm " + "Pressure: " + bi + " kg");
    text("Displacement: " + ai + " mm ", 10, 100);
    text("Pressure: " + bi + " kg ", 10, 200);
}
EN

回答 1

Stack Overflow用户

发布于 2022-08-15 23:18:15

我认为错误是因为当list[0]list[1]为空时,您可以访问它。

试着改变

代码语言:javascript
复制
a = float(list[0]);
b = float(list[1]);

至:

代码语言:javascript
复制
if (list != null){
  a = float(list[0]);
  b = float(list[1]); 
}

希望它能成功。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73367132

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档