java - Java条件语句混淆
问题描述
测试一个简单的 while 循环,但我很困惑, if bottle
is 1
,name is "bottle"
。
但即使bottle
大于它1
,它仍然会打印"bottle"
而不是"bottles"
public class ex {
public static void main(String[] arg) {
int bottle = 0;
String name = "bottles";
while (bottle < 100) {
if (bottle == 1) {
name = "bottle";
}
System.out.println(bottle + " " + name);
++bottle;
}
}
}
解决方案
一旦你设置了 name = "bottle"; 那么 name 将永远是“bottle”,除非你把它改回来。在 if 语句之后添加:
else {
name = "bottles";
}
推荐阅读
- emacs - Emacs:如何定义目录的“书签”变量
- java - 将请求 DTO 映射到实体对象的设计模式?
- swift - 无法将“CGFloat”类型的值转换为闭包结果类型“CGPoint”
- node.js - Sequelize cli 模型创建
- ruby-on-rails-5 - 在 ActiveAdmin 中自定义评论的索引和显示页面
- java - 更改参数量的 Java 函数调用
- javascript - 使用 expressjs 将标头发送到客户端后无法设置标头
- vue.js - 如果数据尚未持久化到 Vuex,则在兄弟组件之间共享数据?
- flask - 如何使用烧瓶迁移用 UUID 填充新创建的列?
- java - 用于 AuditingEntityListener 的 Spring JPA Hibernate CET 时区