java – 使用’if’语句检查后出现空指针异常
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 使用’if’语句检查后出现空指针异常,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4720字,纯文字阅读大概需要7分钟。
内容图文
![java – 使用’if’语句检查后出现空指针异常](/upload/InfoBanner/zyjiaocheng/696/56165a4cfa204faa839d582be5bf6048.jpg)
我收到一个非常恼人的错误,说我得到一个空指针异常但是有一个if语句在继续之前检查文本是否为null:
public String[] getFileData() throws IOException
{
String file_name = "C:/Users/Liloka/Source/textfiles/Lines.txt";
try {
ReadFile file = new ReadFile(file_name);
aryLines = file.OpenFile();
for(int i =0; i<aryLines.length; i++)
{
System.out.println(aryLines[i]);
}
}
catch(IOException e)
{
System.out.println(e.getMessage());
}
return aryLines;
}
public void actionPerformed(ActionEvent evt)
{
if(evt.getSource() == enterBtn)
{
String Text = textToAdd.getText();
if(!(Text.equals(null)))
{
RF.addNewElement(Text);
System.out.println(Text);
try
{
RF.writeToFile();
getFileData();
}
catch(Exception e)
{
}
}
else JOptionPane.showMessageDialog(null, "Please enter a word!");
}
}
唯一一次它甚至认为’其他’是通过这个:
if(Text.equals(null));
我也尝试过:
if(Text != null));
这在过去对我有用但现在不行!其他课程是:
public String[] OpenFile() throws IOException
{
FileReader fr = new FileReader(path);
BufferedReader br = new BufferedReader(fr);
int numberOfLines = readLines();
textData = new String[numberOfLines];
int i;
for(i=0; i<numberOfLines; i++)
{
textData[i] = br.readLine();
}
br.close();
return textData;
}
int readLines() throws IOException
{
FileReader file_to_read = new FileReader(path);
BufferedReader bf = new BufferedReader(file_to_read);
String aLine;
numberOfLines=0;
while((aLine = bf.readLine()) != null)
{
numberOfLines++;
}
//numberOfLines++;
bf.close();
return numberOfLines;
}
public void addNewElement(String newElement)
{
String texticles = newElement;
numberOfLines = numberOfLines++;
textData[numberOfLines] = texticles;
//numberOfLines++; //Increments numberOfLines for the next element to be added
}
public void writeToFile() throws IOException
{
FileWriter fstream = new FileWriter(path);
BufferedWriter outFile = new BufferedWriter(fstream);
//numberOfLines++;
outFile.write(textData[numberOfLines]);
//outFile.write(",");
outFile.write("\r\n");
outFile.close();
}
再次感谢你!
错误:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at textfiles.JListExample.actionPerformed(JListExample.java:115)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
当我键入或未键入内容并按下回车键时,我收到错误.
这是错误
if(Text != null)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at textfiles.JListExample.actionPerformed(JListExample.java:115)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
解决方法:
if(Text.equals(null));
每次Text为null时,上面都会抛出NullPointerException.任何时候你使用“.” operator on null你得到一个NullPointerException.
如果你在if之后得到一个NPE(Text!= null),请发布堆栈跟踪.
内容总结
以上是互联网集市为您收集整理的java – 使用’if’语句检查后出现空指针异常全部内容,希望文章能够帮你解决java – 使用’if’语句检查后出现空指针异常所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。