如何在数组中存储布尔答案并在Java中输出?
我试图在每个循环后在5个不同的数组位置存储5个不同的布尔答案(真或假),然后制作一个方法来显示“真”的问题 例如,测试运行如下所示: 问题1:Content1~(对还是错?False 问题2:Content2~(对还是错?True 问题3:Content3~(对还是错?False (循环完成)如何在数组中存储布尔答案并在Java中输出?,java,arrays,boolean,Java,Arrays,Boolean,我试图在每个循环后在5个不同的数组位置存储5个不同的布尔答案(真或假),然后制作一个方法来显示“真”的问题 例如,测试运行如下所示: 问题1:Content1~(对还是错?False 问题2:Content2~(对还是错?True 问题3:Content3~(对还是错?False (循环完成) 问题2:内容2 (出口) 这是到目前为止我的代码 import javax.swing.*; class booleanTest { public static void main(Stri
问题2:内容2 (出口) 这是到目前为止我的代码
import javax.swing.*;
class booleanTest {
public static void main(String [] params) {
String[] data = {"Test1", "Test2", "Test3", "Test4", "Test5"};
boolean[] user = new boolean[5];
array_input(data, user);
System.out.println(user); // to see if it works atm
System.exit(0);
}
public static String array_input(String[] a, boolean[] b) {
String x = "";
for (int i=0; i<a.length; i++) {
x = JOptionPane.showInputDialog("Data: " + a[i]);
if(x.equals("yes")) {
b[i] = true;
}
else {
b[i] = false;
}
}
return x;
}
//public static String array_print() {
// print the boolean + question here
//}
}
import javax.swing.*;
类布尔测试{
公共静态void main(字符串[]参数){
字符串[]数据={“Test1”、“Test2”、“Test3”、“Test4”、“Test5”};
布尔值[]用户=新布尔值[5];
数组_输入(数据、用户);
System.out.println(用户);//查看它是否工作
系统出口(0);
}
公共静态字符串数组_输入(字符串[]a,布尔值[]b){
字符串x=“”;
对于(int i=0;i如果布尔数组索引处的值为true
,则打印该索引处字符串
数组中的值
public static void printTrue(boolean[] answers, String[] questions) {
// checking both indices to avoid ArrayIndexOutOfBoundsException
for (int i = 0; i < answers.length && i < questions.length; i++) {
// if the answer is true
if (answers[i]) {
System.out.println(questions[i] + ": " + true);
}
}
}
如果布尔数组索引处的值为true
,则打印该索引处字符串中的值
public static void printTrue(boolean[] answers, String[] questions) {
// checking both indices to avoid ArrayIndexOutOfBoundsException
for (int i = 0; i < answers.length && i < questions.length; i++) {
// if the answer is true
if (answers[i]) {
System.out.println(questions[i] + ": " + true);
}
}
}
如果布尔数组索引处的值为true
,则打印该索引处字符串中的值
public static void printTrue(boolean[] answers, String[] questions) {
// checking both indices to avoid ArrayIndexOutOfBoundsException
for (int i = 0; i < answers.length && i < questions.length; i++) {
// if the answer is true
if (answers[i]) {
System.out.println(questions[i] + ": " + true);
}
}
}
如果布尔数组索引处的值为true
,则打印该索引处字符串中的值
public static void printTrue(boolean[] answers, String[] questions) {
// checking both indices to avoid ArrayIndexOutOfBoundsException
for (int i = 0; i < answers.length && i < questions.length; i++) {
// if the answer is true
if (answers[i]) {
System.out.println(questions[i] + ": " + true);
}
}
}
看起来你走的路是对的
数组创建和元素分配:
您的代码看起来不错。您可以像创建任何对象一样使用新运算符创建数组,但必须像指定数组大小一样。元素赋值是使用索引完成的,可以是整数文本,也可以是整数变量(对于上面的代码).数组索引的范围从0到大小-1。看起来这部分也做对了
打印结果:
在您的场景中,您只希望看到一些结果,其中数组值为true
。使用if(user[i])
的简单循环即可
for (int i = 0; i < user.length; i++) {
if (user[i]) {
System.out.println(data[i] + " = " + true);
}
}
for(inti=0;i
看起来您走的是正确的道路
数组创建和元素分配:
您的代码看起来不错。您可以像创建任何对象一样使用新运算符创建数组,但必须像指定数组大小一样。元素赋值是使用索引完成的,可以是整数文本,也可以是整数变量(对于上面的代码).数组索引的范围从0到大小-1。看起来这部分也做对了
打印结果:
在您的场景中,您只希望看到一些结果,其中数组值为true
。使用if(user[i])
的简单循环即可
for (int i = 0; i < user.length; i++) {
if (user[i]) {
System.out.println(data[i] + " = " + true);
}
}
for(inti=0;i
看起来您走的是正确的道路
数组创建和元素分配:
您的代码看起来不错。您可以像创建任何对象一样使用新运算符创建数组,但必须像指定数组大小一样。元素赋值是使用索引完成的,可以是整数文本,也可以是整数变量(对于上面的代码).数组索引的范围从0到大小-1。看起来这部分也做对了
打印结果:
在您的场景中,您只希望看到一些结果,其中数组值为true
。使用if(user[i])
的简单循环即可
for (int i = 0; i < user.length; i++) {
if (user[i]) {
System.out.println(data[i] + " = " + true);
}
}
for(inti=0;i
看起来您走的是正确的道路
数组创建和元素分配:
您的代码看起来不错。您可以像创建任何对象一样使用新运算符创建数组,但必须像指定数组大小一样。元素赋值是使用索引完成的,可以是整数文本,也可以是整数变量(对于上面的代码).数组索引的范围从0到大小-1。看起来这部分也做对了
打印结果:
在您的场景中,您只希望看到一些结果,其中数组值为true
。使用if(user[i])
的简单循环即可
for (int i = 0; i < user.length; i++) {
if (user[i]) {
System.out.println(data[i] + " = " + true);
}
}
for(inti=0;i
只有当您没有其他方式访问数据时,才需要在方法中返回值。如果查看代码,您会发现您甚至没有使用返回值,x
的最后一个值无论如何都不会有用。在这种情况下,您可以将其设为void
方法。当您ant允许它执行某种操作,但不需要它返回任何值。您的代码可以工作,因为数组
是对象
,对它所做的更改甚至可以在方法外部看到
这里大致是我如何实现它的。注意变量名更具描述性
import javax.swing.*;
public class Main {
public static void main(String[] args) {
String[] questions = {"Test1", "Test2", "Test3", "Test4", "Test5"};
boolean[] responses = getUserResponses(questions);
}
public static boolean[] getUserResponses(String[] questions) {
boolean[] responses = new boolean[questions.length]; //use the length of the other array. Don't count on it always being 5
for (int i = 0; i< questions.length; i++) {
String x = JOptionPane.showInputDialog("Data: " + questions[i]);
if(x.equals("yes")) {
responses[i] = true;
}
else {
responses[i] = false;
}
}
return responses;
}
}
import javax.swing.*;
公共班机{
公共静态void main(字符串[]args){
字符串[]问题={“Test1”、“Test2”、“Test3”、“Test4”、“Test5”};
布尔[]响应=getUserResponses(问题);
}
公共静态布尔值[]getUserResponses(字符串[]问题){
boolean[]responses=new boolean[questions.length];//使用另一个数组的长度。不要指望它总是5
为了(