繁体   English   中英

使用布尔方法确定输出

[英]Use boolean method to determine output

我试图让用户为三行中的每一行输入三个数字。 然后分别将第 1、2 和 3 列的值相加。 如果所有 3 列的值独立地加起来为 1,则应使用布尔方法打印出“是”。 我不知道如何让布尔方法工作,而且这里的例子都没有足够具体来帮助我。 关于我可以做些什么来让它正常工作的任何想法?

import java.util.*;

public class MarkovMatrix {

    public static void main(String[] args) {
        //Initializing all arrays
        double[] FirstRow = new double[3];
        double[] SecRow = new double[3];
        double[] ThirdRow = new double[3];
        double[] ColSum = new double[3];
        Scanner input = new Scanner(System.in);

        //Getting input from user
        System.out.print("Enter first Row: ");
        for(int i = 0; i < FirstRow.length; i++){
            FirstRow[i] = input.nextDouble();
        }
        System.out.print("Enter Second Row: ");
        for(int j = 0; j < SecRow.length; j++){
            SecRow[j] = input.nextDouble();
        }
        System.out.print("Enter Third Row: ");
        for(int k = 0; k < ThirdRow.length; k++){
            ThirdRow[k] = input.nextDouble();
        }

        // Summing all columns
        ColSum[0] = FirstRow[0] + SecRow[0] + ThirdRow[0];
        ColSum[1] = FirstRow[1] + SecRow[1] + ThirdRow[1];
        ColSum[2] = FirstRow[2] + SecRow[2] + ThirdRow[2];

        boolean isMarkovMatrix; 

        if(isMarkovMatrix = true)
            System.out.println("Matrix is a Markov Matrix");
    }//End of main

    public static boolean isMarkovMatrix(ColSum double) {
        if(ColSum[0] = 1 && ColSum[1] = 1 && ColSum[2] = 1)
            return true;
    }
}

语句if(isMarkovMatrix = true)将始终被评估为 true ,因为您将true分配给isMarkovMatrix 相反,你应该这样做:

if(isMarkovMatrix == true)

或者甚至更好,只是

if(isMarkovMatrix)

编辑:在您的isMarkovMatrix方法签名中,您需要先放置数据类型,然后isMarkovMatrix变量。

此外, =赋值运算符==是您要在此方法中使用的正确比较运算符

public static boolean isMarkovMatrix(double[] ColSum) {
        if (ColSum[0] == 1 && ColSum[1] == 1 && ColSum[2] == 1)
            return true;
        return false;
    }

顺便说一句:你真的想比较 double 和 integer 吗? 为什么不直接使用整数?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM