我希望这不是一个愚蠢的问题,因为这只是我接触 JAVA 和 Android 编程的第 5 周。所以我对此还是很陌生。
这是我的代码:
public void splitData(){ //**********************PROBLEM HERE**********************
//Initialise everything to 0 to prepare for variable entry
y=0;
gender = "";
sAge = "";
sTotalC = "";
smoker = "";
sHDLC = "";
medication = "";
sSystolic = "";
//To locate the spaces in the data
for(x=0;x<toSplit.length();x++){
if (toSplit.charAt(x) == ' '){
spaceCount[y]=x;
y++;
}
}
//to put together gender
for(x=0;x<spaceCount[0];x++){
gender+= toSplit.charAt(x);
}
//to put together age
for(x=spaceCount[0]+1;x<spaceCount[1];x++){
sAge+=toSplit.charAt(x);
}
//to put together total Cholesterol
for(x=spaceCount[1]+1;x<spaceCount[2];x++){
sTotalC+=toSplit.charAt(x);
}
//to put together smoker status
for(x=spaceCount[2]+1;x<spaceCount[3];x++){
smoker+=toSplit.charAt(x);
}
//to put together HDL Cholesterol level
for(x=spaceCount[3]+1;x<spaceCount[4];x++){
sHDLC+=toSplit.charAt(x);
}
//to put together medication status
for(x=spaceCount[4]+1;x<spaceCount[5];x++){
medication+=toSplit.charAt(x);
}
//to put together Systolic BP
for(x=spaceCount[5]+1;x<=toSplit.length();x++){
sSystolic+=toSplit.charAt(x);
}
}
}
所以基本上我的可怕尝试是在字符串中找到所有空格,并根据空格将字符串中的字母组合成不同的变量,并将每个新构造的单词显示到 EditText 中。
这段代码中的一切都很好,直到我点击按钮 mSplit 应该开始执行所述任务,然后它会显示“不幸的是应用程序已停止工作”。
我在很多网站上搜索过,但大多数网站都使用其他形式的方法来拆分句子并立即显示,而不会将其保存到另一个数组或变量中。
看起来而且我知道我可能正在以一种漫长而愚蠢的方式来做这件事,因为我对 C++ 的了解有限,因此我试图以我知道的唯一方式来做这件事的原因。
我对所有建议和意见持开放态度,并在此先谦虚地感谢您。