java - RadioButton值增量减量使用Java
问题描述
这是一个在线考试系统。如果答案是正确的,则标记增加 1 它可以在同一个问题上正确工作第二次选择错误的答案 ii 需要减少值
int marks;
String cor;
public void answerCheck()
{
String answerAnswer="";
if(r1.isSelected())
{
answerAnswer = r1.getText();
}
else if(r2.isSelected())
{
answerAnswer = r2.getText();
}
else if(r3.isSelected())
{
answerAnswer = r3.getText();
}
else if(r4.isSelected())
{
answerAnswer = r4.getText();
}
if(answerAnswer.equals(cor))
{
marks = marks + 1;
String Marks = String.valueOf(marks);
txtc.setText(Marks);
}
else if(!answerAnswer.equals(cor))
{
marks = marks - 1;
String Marks = String.valueOf(marks);
txtc.setText(Marks);
}
else
{
marks =0;
}
}
我正在从数据库中加载所有数据正确答案我也在加载 数据库加载
public void Connection()
{
Class.forName("com.mysql.jdbc.Driver");
con = DriverManager.getConnection("jdbc:mysql://localhost/onlineex","root","");
String query = "select * from questions";
pst = con.prepareStatement(query);
rs = pst.executeQuery();
while(rs.next())
{
txtqu.setText(rs.getString("id"));
txtques.setText(rs.getString("question"));
r1.setText(rs.getString(3));
r2.setText(rs.getString(4));
r3.setText(rs.getString(5));
r4.setText(rs.getString(6));
cor = rs.getString(7);
}
}
接下来我有一个按钮呼叫
try
{
if(rs.previous())
{
txtques.setText(rs.getString("question"));
r1.setText(rs.getString(3));
r2.setText(rs.getString(4));
r3.setText(rs.getString(5));
r4.setText(rs.getString(6));
cor=rs.getString(7);
}
else
{
JOptionPane.showMessageDialog(this, "This is first record of student");
}
answerCheck();
}
我之前有按钮调用
if(rs.next())
{
txtques.setText(rs.getString("question"));
r1.setText(rs.getString(3));
r2.setText(rs.getString(4));
r3.setText(rs.getString(5));
r4.setText(rs.getString(6));
cor=rs.getString(7);
}
else
{
JOptionPane.showMessageDialog(this, "This is first record of student");
}
answerCheck();
解决方案
首先,最后一个 else 中存在一个永远不会执行的逻辑错误,因为答案是正确的或错误的,没有第三个条件。
String cor;
public void answerCheck()
{
String answerAnswer="";
if(r1.isSelected())
{
answerAnswer = r1.getText();
}
else if(r2.isSelected())
{
answerAnswer = r2.getText();
}
else if(r3.isSelected())
{
answerAnswer = r3.getText();
}
else if(r4.isSelected())
{
answerAnswer = r4.getText();
}
if(answerAnswer.equals(cor))
{
marks = marks + 1;
String Marks = String.valueOf(marks);
txtc.setText(Marks);
}
else if(!answerAnswer.equals(cor) || ((r1.isSelected() ||
r2.isSelected() || r3.isSelected() || r4.isSelected()))
{
marks = marks - 1;
String Marks = String.valueOf(marks);
txtc.setText(Marks);
}
}
推荐阅读
- php - TYPO3:如何从头开始创建复杂的自定义内容元素
- c++ - 动态分配数组的矩阵乘法;结果不正确
- javascript - 如何比较具有不同数据类型的两个对象
- javascript - 如何使用 jquery 从 TD 文本(旧数据表)中设置每个表 TD 的标题?
- wordpress - wp.data.select('core').getPostType('post-type') 在 Gutenberg 中返回 undefined
- c# - 如何创建转换器以便 JsonConvert.DeserializeObject 将转换 List
属性只是字符串属性 - string - 如何在 Go 中的多行字符串中添加反引号?
- artifactory - 当 jfrog-cli 在下载时跳过已经存在的文件或工件时,如何以编程方式知道?
- python - 如何从 Excel 工作表中删除无效字符?
- laravel - 如何在我的项目上设置惯性,当我尝试加载登录页面时出现错误