如果满足要求,则为数组中的某些元素添加注释

时间:2015-11-19 03:36:11

标签: java arraylist

那么我的程序应该做什么......

  1. 遍历113个数字的数组
  2. 打印所述数字
  3. 但是如果..

    • 数字是奇数打印"奇数"在它旁边
    • 数字可以被5打印"高五"
    • 整除
    • x的总数及其后续数字(x + 1)可被7打印整除"哇"
    • 数字是主要打印" prime"

    目前我的程序将遍历数字并打印适用的数字,如果两个应用它将打印两次不同的注释。我想要做的是打印所有数字,然后在适用的数字旁边打印注释。如果适用两个条件,则将笔记打印在彼此旁边而不是新行。

    离。我希望它做什么..

    x:5,奇数,高五

    我一直尝试从我找到的一些例子中采用不同的技术,但无济于事。任何指导或指导都将非常感谢!

    P.S。 - 我知道我还没有实现素数,我的等式是不对的,那就在我的名单上。

    这是我到目前为止所拥有的......

    import java.util.ArrayList;
    
    public class Number {
    
    public static ArrayList<Integer> getSequence() {
        ArrayList<Integer> numbers = new ArrayList<Integer>(113);
    
        for (int n = 0; n <= 113; n++) {
            numbers.add(n);
        }
        return numbers;
    }
    
    
    public static boolean isOdd(int n) {
        if (getSequence().get(n) % 2 != 0) {
            System.out.println("x: " + n + ", x is odd");
        }
        return true;
    }
    
    
    public static boolean isDivisibleBy5(int n) {
        if (getSequence().get(n) % 5 == 0) {
            System.out.println("x: " + n + ", hi five");
        }
        return true;
    }
    
    
    public static boolean isDivisibleBy7(int n) {
        int x = getSequence().get(n) + (getSequence().get(n) + 1);
    
        if (x % 7 == 0 && x<113) {
            System.out.println("x: " + n + ", wow");
        }
        return true;
    }
    
    
    public static boolean isPrime(int n) {
        if (n <= 1) {
            return false;
        }
            for (int i = 2; i < Math.sqrt(n); i++) {
                System.out.println("x: " + n + ", prime");
    
                if (n % 1 == 0) {
                    return false;
                }
        }
        return true;
    }
    
    
    public static void main(String[] args) {
    
        ArrayList<Integer> nums = getSequence();
    
        for (int n : nums) {
            if(isOdd(n)) {
            }
            if(isDivisibleBy5(n)){
            }
            if(isDivisibleBy7(n)){
            } 
    
        }
    }
    

    }

1 个答案:

答案 0 :(得分:0)

不使用Integer arraylist而是创建一个可以容纳IntegerArrayList<String>的单独类。然后创建该类类型的arraylist。

在新课程中制作方法如下

  • 插入号码的方法
  • 检索号码的方法
  • 将标签插入数组列表的方法。
  • 检索ArrayListString[]的方法 通过这种方式,您可以轻松解决问题。

另一种方法是使用Map对象(HashMap代替)。 Integer为KEY,ArrayList<String>为VALUE。