मुझे तरीकों के बीच सरणियों को पारित करने में कठिनाई हो रही है, मैं उन सभी को boolean से झूठे में सेट करने में कामयाब रहा हूं, और मुख्य को सरणी लौटा दी। हालाँकि वहाँ से मैं यह नहीं जानता कि इसे किसी अन्य विधि से कैसे पारित किया जाए, और फिर बाद में boolean सही सरणी को "हां" या boolean झूठी सरणी के रूप में "नहीं" प्रदर्शित करें। मेरा कोड निम्नानुसार दिखता है:

import javax.swing.*;
class methodarrays
{
    public static void main (String[]param)
    {
        arrays();
        seen(); 
        display();
    }

    public static boolean[] arrays()
    {
        boolean [] birds = new boolean [5];
        for (int i=0;i<birds.length;i++)
        {
            birds[i]=false;
        }
        return birds;
    }
    public static boolean seen()
    {
        String quit = "100";
        String ans = "";
        while(!ans.eqauls(quit))
        {
            ans=JOptionPane.showInputDialog(null,"Which bird are you reporting? \n   1) Blue Tit   2) Blackbird   3)Robin   4)Wren   5)Greenfinch");
            if (ans.equals("1"))
            {
                birds[0] = true;
                return birds[0];
            }
            else if (ans.equals("2"))
            {   birds[1] = true;
                return birds[1];
            }
            else if (ans.equals("3"))
            {
                birds[2] = true;
                return birds[2];
            }
            else if (ans.equals("3"))
            {
                birds[2] = true;
                return birds[2];
            }
            else if (ans.equals("4"))
            {
                birds[3] = true;
                return birds[3];
            }
            else if (ans.equals("5"))
            {
                birds[4] = true;
                return birds[4];
            }
        }
    }

    public static void display()
    {
        JOptionPane.showMessageDialog(null,"Your Garden Watch results are:");
    }

}
-2
duldi 17 नवम्बर 2015, 18:23

4 जवाब

सबसे बढ़िया उत्तर

आपको देने के लिए हाथ शुरू कर रहे हैं ... आप {{X 1}} विधि में स्थानीय चर के लिए arrays विधि का परिणाम सेट कर सकते हैं और seen के तर्क के रूप में पास कर सकते हैं। फिर आप display विधि के लिए भी ऐसा कर सकते हैं।

    public static void main (String[]param)
    {   
        boolean[] birds = arrays();
        seen(birds); 
        display(birds);
    }

    public static boolean[] arrays()
    {
    ...
    }
    public static boolean seen(boolean[] birds)
    {
    ...

इस तरह की चीज़ के लिए वेब पर बहुत सारे ट्यूटोरियल हैं। यहां एक उदाहरण है।

1
George Lee 17 नवम्बर 2015, 15:31

आपको इसे एक पैरामीटर के रूप में पारित करने या वैश्विक सरणी घोषित करने की आवश्यकता है।

  1. पैरामीटर द्वारा पास करना:

कक्षा पद्धति {

public static void main (String[]param)
{
    boolean [] myArray =arrays();
    seen(myArray); 
    display(myArray);
}

public static boolean seen(boolean [] myArrayParam)
{
   for (int i=0;i<myArrayParam.length;i++)
   {...}
}

public static boolean display(boolean [] myArrayParam)
{
   for (int i=0;i<myArrayParam.length;i++)
   {...}
}

}

  1. वैश्विक सरणी के रूप में:

कक्षा पद्धति {

   boolean [] myArray

public static void main (String[]param)
{
    myArray = arrays();
    seen(); 
    display();
}

public static boolean seen()
{
   for (int i=0;i<myArray.length;i++)
   {...}
}

public static boolean display()
{
   for (int i=0;i<myArray.length;i++)
   {...}
}

}

1
user1697575 17 नवम्बर 2015, 15:37

प्रचार

boolean [] birds = new boolean [5];

अपनी कक्षा के भीतर सभी तरीकों के लिए सुलभ वस्तु के रूप में।

import javax.swing.*;

class methodarrays
{   

    private boolean [] birds = new boolean [5]

    ...

    public static boolean[] arrays()
    {
        for (int i=0;i<birds.length;i++)
        {birds[i]=false;
        }
        return birds;
    }

    ...
}
1
Farasy 17 नवम्बर 2015, 15:48

यहाँ कार्यान्वयन अपनी खुद की नकल है:

आयात javax.swing.JOptionPane;

सार्वजनिक वर्ग उदाहरण {निजी स्थिर बूलियन [] पक्षी = नया बूलियन [5];

   public static void main (String[]param){ 
       arrays();
       seen(); 
       display();
   }

   public static boolean[] arrays()
   {   
       // Completely unnecessary since values are set to false by default;
       for (int i=0;i<birds.length;i++)
       {birds[i]=false;
       }
       return birds;
   }
   public static void seen(){   
       String quit = "100";
       String ans = "";
       while(!ans.equals(quit))
       {
           ans=JOptionPane.showInputDialog(null,"Which bird are you reporting? \n   1) Blue Tit   2) Blackbird   3)Robin   4)Wren   5)Greenfinch");
           if (ans.equals("1"))
           {   birds[0] = true;
           }
           else if (ans.equals("2"))
           {   birds[1] = true;
           }
           else if (ans.equals("3"))
           {   birds[2] = true;
           }
           else if (ans.equals("3"))
           {   birds[2] = true;
           }
           else if (ans.equals("4"))
           {   birds[3] = true;
           }
           else if (ans.equals("5"))
           {   birds[4] = true;
           }
       }
   }

   public static void display(){
       System.out.println("Your results are: ");
       System.out.println("Blue Tit: " + birds[0]);
       System.out.println("Blackbird: " + birds[1]);
       //and so on..
   }

}

0
e.doroskevic 17 नवम्बर 2015, 15:42