boolean和int之间不能相互赋值
时间: 2023-06-25 19:03:25 浏览: 49
是的,确实无法将 boolean 类型的值直接赋给 int 类型的变量,或将 int 类型的值直接赋给 boolean 类型的变量。这是因为它们是不同的数据类型,具有不同的内部表示和语义。
boolean 类型只有两个值:true 和 false,它们分别表示逻辑上的真和假。而 int 类型是一个整数类型,可以表示更广泛的数值范围。
如果需要将一个 boolean 类型的值转换为 int 类型,可以使用条件运算符(?:)来实现。例如,将 true 转换为 1,false 转换为 0,可以使用以下代码:
```
boolean b = true;
int i = b ? 1 : 0;
```
如果需要将一个 int 类型的值转换为 boolean 类型,可以使用比较运算符(<、<=、>、>=、==、!=)或逻辑非运算符(!)来实现。例如,将一个整数 x 转换为 boolean 类型,可以使用以下代码:
```
int x = 42;
boolean b = x != 0;
```
这里使用了不等于运算符来比较 x 和 0 的值,得到一个 boolean 类型的结果。如果 x 不等于 0,则 b 的值为 true,否则为 false。
相关问题
int 转 boolean
int 转 boolean 可以通过判断 int 变量是否等于0来实现。如果 int 变量不等于0,则将 boolean 变量赋值为 true;如果 int 变量等于0,则将 boolean 变量赋值为 false。这样就完成了 int 转 boolean 的过程。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [JAVA之int与boolean的转换 -----计蒜客](https://blog.csdn.net/shuang_com/article/details/114293699)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [Java中Integer两种转int方法比较](https://download.csdn.net/download/weixin_38742460/12786697)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [强制类型转换](https://blog.csdn.net/shuai__1997/article/details/96434889)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
mybatis 取消实体类boolean类型查询时自动赋值
在 MyBatis 中,如果我们的实体类中包含了 boolean 类型的属性,那么在进行查询时,MyBatis 会自动为这个属性赋一个默认值。如果我们不希望 MyBatis 自动赋值,可以在对应的 `<select>` 标签中添加 `useCache="false"` 属性,如下所示:
```xml
<select id="selectUser" parameterType="int" resultMap="userResultMap" useCache="false">
select * from user where id = #{id}
</select>
```
这样,在查询时,MyBatis 就不会自动为 boolean 类型的属性赋默认值了。