我正在尝试学习如何使用lastIndexOf
函数,但是该代码对我不起作用。单击按钮后,我得到的只是全文,而不仅仅是扩展名。我究竟做错了什么?
private String getExtension(String s)
{
char dot='.';
int pos=s.lastIndexOf("dot");
String root=s.substring(pos+1);
return root;
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
String s=jTextField1.getText();
jLabel1.setText(getExtension(s));
}
最佳答案
你的问题
您需要删除变量名周围的引号。
int pos=s.lastIndexOf("dot");
变成
int pos=s.lastIndexOf(dot);
放在一边
如果您使用过调试器,则可以很容易地自己解决这个问题。我忍不住感觉到您已经将SO用作首选手段,而不是应有的手段。当您真正用尽了所有您自己知道的调查方法时可以去的地方。
调试器
几乎每个IDE(Eclipse,Netbeans等)都具有称为调试器的功能。调试器使您可以逐行浏览程序,并在程序开发时查看每个变量的值。如果使用的是Eclipse,请在顶部的工具栏上选择
Run -> Debug
,以在调试模式下初始化程序。对于Netbeans,“运行”按钮(播放符号)右侧有一个调试按钮。仅举几个例子。关于java - LastIndexOf函数用法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15866795/