char c = formbean.getOptionType().value().charAt(0)
嗨,上面的行要么返回'P',要么'C'。 所以char c的值可以是'P'或'C'。
现在,我的问题是,我不是分配'P'或'C'值,而是分别指定0或1。
(例如,如果值为'P',我需要将其指定为0,如果值为'C',则需要将其指定为1)。
答案 0 :(得分:0)
if (formbean.getOptionType().value().charAt(0) == 'P')
char c = 0;
else if (formbean.getOptionType().value().charAt(0) == 'C')
char c = 1;
答案 1 :(得分:0)
如果'P'和'C'是唯一返回的值,那么这样的事情就可以了......
char c = (formbean.getOptionType().value().charAt(0) == 'P')?'0':'1';
这就是你想要的吗?
答案 2 :(得分:0)
我不太确定这是否是您想要的,但您可以直接将整数值分配给char
类型,如下所示:
char c = (char) ((formbean.getOptionType().value().charAt(0) == 'P') ? 0 : 1);
但是,由于这不是非常直观且不易于阅读,因此将其重构为方法可能是更好的做法:
private char getOptionTypeChar(char aChar) {
if (aChar == 'P') {
return 0;
}
return 1;
}
然后简单地称之为:
char c = getOptionTypeChar(formbean.getOptionType().value().charAt(0));
答案 3 :(得分:0)
答案取决于:变量c
代表什么以及如何使用?
如果您想要0或1,那么int
或boolean
可能是要分配的更好的变量类型。在任何情况下,最明显的做法是使用if / else语句。这是一个假设你想要0或1的例子,这样你就可以做出决定(正如我所说,这取决于你打算用c
做什么):
char c = formbean.getOptionType().value().charAt(0);
boolean goLeft;
if (c == 'C') {
goLeft = true;
} else if (c == 'P') {
goLeft = false;
} else {
// Handle error maybe
}
if (goLeft) {
// Go left
} else {
// Go right
}