【问题标题】:How to put my integer results from a method into an array to manipulate down the line如何将方法中的整数结果放入数组中以进行操作
【发布时间】:2021-07-29 00:42:13
【问题描述】:

我认为我做错了,我试图将我打印的素数放入一个数组中,以便稍后将它们立方(将它们乘以 x3。)这是最合乎逻辑的方法吗?有没有更好的方法来存储它们以供操作?

package thingy;

public class thingy {
    
    public static void main(String[] args) {
    int x=102;
    for(int i=2;i<=102;i++) {
        isPrime(i);
        int [] array2= {array*array*array};
    }
    }
    
    static void isPrime(int n) {
        int i,m=0,flag=0;      
        ;//it is the number to be checked    
        m=n/2; 
        
          if(n==0||n==1){  
           
          }else{  
              
           for(i=2;i<=m;i++){      
            if(n%i==0){      
             flag=1;      
             break;      
            }      
           }      
           if(flag==0)  { System.out.println(n+" is prime number"); }  
           int [] array = {n};
          }//end of else  
        }       

}

【问题讨论】:

  • 我同意@WJS 关于数组列表的观点。像 int [] array = {n} 这样的行的目的是什么?这只是要创建一个包含 n 的 1 元素数组。我相信一旦 isPrime 函数结束,该数组就会超出范围,并且对程序的其余部分没有用。作为旁注,请查看 stackoverflow.com/questions/4424374/… 以获取有关如何计算素数的提示。

标签: java


【解决方案1】:

对于数组,您需要在使用它们之前知道其大小,然后根据需要重新调整。因此,请使用ArrayList,您可以在其中根据需要继续添加值。您还可以删除在数组中无法轻松执行的值。列表更易于使用。

List<Integer> list = new ArrayList<>();
list.add(10);
list.add(20);
... ad nauseum

System.out.println(list.get(1)); // prints 20
System.out.println(list); // prints [10, 20]

他们也有许多其他方便的方法。在ArrayList查看它们

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-03
    • 2020-07-25
    • 2018-12-03
    • 2019-04-26
    • 1970-01-01
    • 2010-09-06
    • 1970-01-01
    相关资源
    最近更新 更多