当用户通过微调器输入时间并且时间是17:00然后我想返回错误Toast,现在我已经将我的beginTime声明为我的微调器中的String我需要将其转换回Int以检查该值是否等于17:00
public void checkBeginTime()
String begingTime = beginTimespinner.getText().toString();
if (beginTime == 17:00)
{
Toast.etc
}
else
{
add beginTime;
}
如果我尝试这样做,那么它会因为:
,任何想法而无法工作吗?
答案 0 :(得分:1)
your_str = your_str.replace(":", "");
your_int = Intger.parseInt(your_str);
您最终得到一个唯一的整数。
答案 1 :(得分:1)
假设beginTime首先是一个字符串,那么永远不会将字符串与==进行比较。 您必须使用.equals()方法。 (Google为什么不这样做。)
在Java中你可以这样做:
private void testVal(String beginTime) {
String testVal = "17:00";
if (testVal.equals(beginTime)){
System.out.println("Matched " + beginTime);
// Or whatever you want in Android, such as Toast
}
else{
System.out.println("No match with " + beginTime);
// Or whatever you want in Android, such as Toast
}
}
您可以使用以下方法调用该方法:
String beginTime = "17:00"; // or in your case beginTimespinner.getText().toString();
test.testVal(beginTime);
答案 2 :(得分:0)
int MyInt=Integer.parseInt("17.00");
答案 3 :(得分:0)
很难理解你在问什么。将来,请在发布前花一些时间来收集您的想法。
我会捅一下。
“17:00”
是你说过的一个字符串。通常,在谈论字符串时 - > int转换,最终目标很明确,即很容易理解你想要的东西
“15” - > 15; “-2” - > -2 //等等
因为这个原因结肠很棘手,你想要17或1700吗?显然非常不同。您可以通过字符串操作来控制它。说你想要1700,你可以这样做:
String str = "17:00";
int StrAsInt = Integer.ParseInt(str.replace(":",""));
或者对于17,子串索引0到冒号的索引。关键是,你需要自己做一些腿部工作来将类似的东西转换为整数。
答案 4 :(得分:0)
假设您使用Spinner让用户输入时间,您是否考虑使用TimePicker或TimePickerDialog?
从Time Picker教程中获取了以下代码。我只是粘贴了相关的方法来说明我的观点,但可以找到完整的教程here:
public class HelloTimePickerActivity extends Activity {
private TextView mTimeDisplay;
private Button mPickTime;
static final int TIME_DIALOG_ID = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// capture our View elements
mTimeDisplay = (TextView) findViewById(R.id.timeDisplay);
mPickTime = (Button) findViewById(R.id.pickTime);
// add a click listener to the button
mPickTime.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
showDialog(TIME_DIALOG_ID);
}
});
// snip...
}
// the callback received when the user "sets" the time in the dialog
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() {
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
mHour = hourOfDay;
mMinute = minute;
}
};
@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case TIME_DIALOG_ID:
return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute, false);
}
return null;
}
}
如您所见,回拨onTimeSet()
会将小时和分钟作为int
值传递,方便您查看。