java gui程序上的llegalFormatConversionException错误 import javax.swing.*; 导入java.awt.*; 导入java.awt.event.*; 导入java.io.*; 导入java.util.*; 导入java.net。*; 公共类NameListListenerTest扩展JFrame实现ActionListener{ 静态ArrayList名称列表_2; 静态JFrame-bframe; 静态JPanel-p; //JButton用户b; 公共名称ListenerTest(){ 试一试{ JButton用户b; //ArrayList ls=新的ArrayList(); String str=“hiwhatsupmate!”; int start=str.indexOf(“#!#”); System.out.printf(“%d\n”,开始); int end=str.indexOf(“#!#”,start+1); System.out.printf(“%d\n”,结束); 字符串用户名=str.substring(开始+3,结束-3); System.out.printf(“%d\n”,用户名); int x=userNames.length(); while(true){ 如果(x>1){ if(userNames.indexOf(“”==0) nameList_2.add(userNames.substring(1,userNames.indexOf(“,1)); 其他的 nameList_2.add(userNames.substring(0,userNames.indexOf(“”)); } 其他的 打破 } p=新的JPanel(新的GridLayout(nameList_2.size(),1)); 对于(int i=0;i
格式说明符不正确。替换java gui程序上的llegalFormatConversionException错误 import javax.swing.*; 导入java.awt.*; 导入java.awt.event.*; 导入java.io.*; 导入java.util.*; 导入java.net。*; 公共类NameListListenerTest扩展JFrame实现ActionListener{ 静态ArrayList名称列表_2; 静态JFrame-bframe; 静态JPanel-p; //JButton用户b; 公共名称ListenerTest(){ 试一试{ JButton用户b; //ArrayList ls=新的ArrayList(); String str=“hiwhatsupmate!”; int start=str.indexOf(“#!#”); System.out.printf(“%d\n”,开始); int end=str.indexOf(“#!#”,start+1); System.out.printf(“%d\n”,结束); 字符串用户名=str.substring(开始+3,结束-3); System.out.printf(“%d\n”,用户名); int x=userNames.length(); while(true){ 如果(x>1){ if(userNames.indexOf(“”==0) nameList_2.add(userNames.substring(1,userNames.indexOf(“,1)); 其他的 nameList_2.add(userNames.substring(0,userNames.indexOf(“”)); } 其他的 打破 } p=新的JPanel(新的GridLayout(nameList_2.size(),1)); 对于(int i=0;i,java,Java,格式说明符不正确。替换 java.lang.NullPointerException at NameListListenerTest.<init>(NameListListenerTest.java:36) at NameListListenerTest.main(NameListListenerTest.java:53) Exception in thread "main" java.lang.NullPointerException at java.awt
java.lang.NullPointerException
at NameListListenerTest.<init>(NameListListenerTest.java:36)
at NameListListenerTest.main(NameListListenerTest.java:53)
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at javax.swing.JFrame.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at NameListListenerTest.main(NameListListenerTest.java:54)
与
另外,ArrayList
nameList_2
从未初始化,导致出现NPE
,如编辑中所示
System.out.printf("%s\n",userNames);
ArrayList name list_2=new ArrayList()
格式说明符不正确。请更换
java.lang.NullPointerException
at NameListListenerTest.<init>(NameListListenerTest.java:36)
at NameListListenerTest.main(NameListListenerTest.java:53)
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at javax.swing.JFrame.addImpl(Unknown Source)
at java.awt.Container.add(Unknown Source)
at NameListListenerTest.main(NameListListenerTest.java:54)
与
另外,ArrayList
nameList_2
从未初始化,导致出现NPE
,如编辑中所示
System.out.printf("%s\n",userNames);
ArrayList name list_2=new ArrayList()
问题来自:
ArrayList<String> nameList_2 = new ArrayList<>()
System.out.printf遵循C printf语法。在此语法中,%d代替整数,但您给它一个字符串。问题来自:
ArrayList<String> nameList_2 = new ArrayList<>()
System.out.printf遵循C printf语法。在这种语法中,%d代替了整数,但您给它一个字符串。由于p,您得到了空指针验证。我认为
nameList_2.add(userNames.substring(0,userNames.indexOf(“”));
有问题,因此nameList_2.size()
返回null您会因为p而得到null指针验证。我认为
nameList_2.add(userNames.substring(0,userNames.indexOf(“”));
因此出现问题nameList_2.size()
返回null这似乎对它的一部分有效,现在我的编辑部分出现了一个新错误。有许多问题,例如,x
的值在中从未更改,而循环导致它无限期循环。请使用调试器检查代码。非常感谢:),我花了很多时间修复其他bug,但结果很好,我相信这似乎对其中的一部分有效,现在我的编辑部分出现了一个新错误。有很多问题,例如,x
的值在中从未更改,而
循环会导致它无限期循环。请使用调试器检查代码。谢谢欧非常:),我花了很多时间来修复其他bug,但我相信结果是相当不错的
System.out.printf("%d\n",userNames);