在Java中使用多种方法

时间:2019-03-13 21:05:01

标签: java methods rounding

如何在代码中使用多种方法?首先,它询问数组的大小,然后询问元素的数目。一种方法是使用特殊规则对数字进行舍入。 第二种方法是修改数组的void方法。第三种方法是使用修改后的值制作一个新数组,然后返回该数组。

package tombtombbekerekit;

导入java.util.Scanner;

公共类TombTombbeKerekit {     public static int round(int osszeg)     {         int last_Digit = osszeg%10;     如果(last_Digit <3)         返回osszeg-last_Digit;     否则if(last_Digit> 7)         返回osszeg +(10-last_Digit);     其他         返回osszeg-(last_Digit)+ 5;     }

public static void roundSelf(int [] numbers)
{
    int[] array = numbers;
    for (int i = 0; i < array.length; i++)
    return;
}

public static int [] roundNew(int [] numbers)
{
    int [] newArray = new int[numbers.length];
    return newArray;
}

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.print("Kérem az összegek számát: ");
    int size = sc.nextInt();
    System.out.println("Kérem az összegeket: ");
    int [] array = new int[size];
    for (int i = 0; i < array.length; i ++)
    {
        array[i] = sc.nextInt();
    }
    int [] kerek = roundNew(array);
    System.out.println("Kerekítve: ");
    for (int i = 0; i < kerek.length; i++)
        System.out.println(kerek[i]);
}

}

1 个答案:

答案 0 :(得分:1)

您应该编写自己的函数。只要找到四舍五入的规则。您可以使用n%10来获取名为n的整数的最后一位。

我写了一些东西,但是还没有测试,我相信它应该可以工作。检查一下:

public int weirdRounding(int n)
{
    int last_Digit = n % 10;
    if(last_Digit  < 3) 
        return n - last_Digit;
    else if(last_Digit > 7)
        return n + (10 - last_Digit);
    else // the last digit is 3,4,5,6,7
        return n - (last_Digit) + 5;
}

注意:如果要使用此代码,则可能应使它更具可读性。例如,定义int LOWER_BOUND = 3int UPPER_BOUND = 7而不是使用'3'和'7',您还可以使用函数(例如roundUp,roundToFive ..)包装丑陋的表达式。 #Magic_Numbers_Are_Bad