java - 这里的设置器或 if 语句有什么问题
问题描述
我有下面的代码,它工作正常,但只有 1 个 if 语句没有做任何事情,我不明白为什么我的代码是:
我已将 (******这是有问题的 if 语句 *****) 放在有问题的 if 语句旁边。
有趣的是,在第一个 main if 语句中if theVerb.endsWith(Ani)
它运行完美,但它不适用于第二个 main if 语句if theVerb.endsWith(Attah_att)
。
public void showResult (View showResultView) {
Intent showResult;
showResult = new Intent(this, VerbSearch.class);
EditText getTheVerb = (findViewById(R.id.editText2));
String theVerb = getTheVerb.getText().toString().trim();
TextView setBenyan = findViewById(R.id.benyanText);
TextView setZman = findViewById(R.id.zmanText);
TextView setGuf = findViewById(R.id.gufText);
TextView setVerb = findViewById(R.id.verbText);
String ani = "תי";
String attah_att = "ת";
int numberOfletter;
String Thesubstring = null;
String tl = null;
String fl = null;
String fil = null;
//First main if statement
if(theVerb.endsWith(ani)) {
numberOfletter = theVerb.indexOf(ani);
Thesubstring = theVerb.substring(0, numberOfletter);
// Hitpael Past
if((Thesubstring.length() == 5) && ((Thesubstring.substring(0,2).equals("הת") || Thesubstring.substring(0,2).equals("הש")
|| Thesubstring.substring(0,2).equals("הס") || Thesubstring.substring(0,2).equals("הז")
|| Thesubstring.substring(0,2).equals("הצ")))) {
fil = theVerb.substring(4,5);
setBenyan.setText("התפעל");
setZman.setText("עבר");
setGuf.setText("אני");
setVerb.setText(theVerb.substring(0,4).concat(fil));
}
}
// second main if statement
if(theVerb.endsWith(attah_att)) {
numberOfletter = theVerb.indexOf(attah_att);
Thesubstring = theVerb.substring(0, numberOfletter);
// Hitpael Past ******This is the problematic if statement*****
if((Thesubstring.length() == 5) && ((Thesubstring.substring(0,2).equals("הת") || Thesubstring.substring(0,2).equals("הש")
|| Thesubstring.substring(0,2).equals("הס") || Thesubstring.substring(0,2).equals("הז")
|| Thesubstring.substring(0,2).equals("הצ")))) {
fil = theVerb.substring(4,5);
setBenyan.setText("התפעל");
setZman.setText("עבר");
setGuf.setText("אתה/את");
setVerb.setText(theVerb.substring(0,4).concat(fil));
}
}
}
解决方案
答案我终于发现了问题所在。我只需要使用lastIndexOf
而不是indexOf
推荐阅读
- c - sscanf() 跳过分隔符和宽度
- html - 如何在目录周围换行
- .net - F# 位反转排列
- javascript - CSS 按钮不可点击,具体取决于大小和边距(移动设备)
- angular - Angular CLI SCSS 模块在 Windows 上构建失败
- c# - Selenium 列表排序顺序比较 C#
- php - 从保存在数据库中的 url 显示图像
- angularjs - 角度路由,出现错误“injector:modulerr”,找不到我的 ng-app
- macos - 如何找到生成我的 PATH 变量的位置以及如何在 Mac OSX 终端中编辑它?
- solr - 在将大型查询传递给 Solr 之前最小化它们