java - 我不能正确划分两个数字

标签 java android

int percent = (score/numberOfQuestions)*100;
progressText.setText(score+"/"+numberOfQuestions+"  "+percent+"%");

无论我累什么,返回 0%。我尝试将其转换为 int、double、float

为什么对于 score=5 numberOfQuestions=8 这样的数字返回 0%?

最佳答案

问题是将两个整数相除得到结果的整数部分。因此,(score/numberOfQuestions) 将始终为 0。
你应该做的是

int percent = (score * 100 / numberOfQuestions);

然后 *100 会先被执行,然后除法会给你正确的结果。

关于java - 我不能正确划分两个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12825617/

相关文章:

java - 有没有一种方法可以在不直接访问 Java 中的 Websphere keystore 的情况下执行相互 SSL?

Android - 将 Activity 和小部件绑定(bind)到服务

android - PDFTron for android - 绘制注释错误

android - 在错误地创建应用程序而不是库后,像在 iOS 中一样在 Android Studio 中创建目标

android - 共享时 "FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET"的作用是什么?

java - WAS 服务器中的 org/codehaus/jackson/map/ObjectMapper.setSerializationInclusion 异常

java - java中如何根据环境加载资源文件?

java - 解析嵌套 JSON 数组时卡住

java - 运行 Java 应用程序什么也不做

java - 定制设计算法的好处