JavaRush /Java 博客 /Random-ZH /模除运算符
L2CCCP
第 9 级

模除运算符

已在 Random-ZH 群组中发布
模除运算符是运算符mod,用符号 表示%模除运算符 - 1当第一个操作数除以第二个操作数时,该运算符返回余数。modJava 中的“ ”运算符%不仅适用于整数(例如:byte/int/short/long),还适用于浮点(例如:float/double)数字\类型。下面的程序说明了该语句的工作原理:
package com.l2cccp.work;

public class Mod
{
	public static void main(String args[])
	{
		int i = 17; // Integers
		double d = 17.3; // floating point

		System.out.println("i mod 10 = " + i % 10);
		System.out.println("d mod 10 = " + d % 10);
	}
}
通过运行该程序,您将得到以下结果:
i mod 10 = 7
d mod 10 = 7.300000000000001
我们弄清楚了这个运算符是如何工作的,以及如何使用它。作为根据数量改变单词的选项。由于我是一名java游戏模拟器的开发人员,因此消息中的许多单词的变形对我来说非常重要。例如:
  1. 您已经玩了 1
  2. 你已经玩了两天
  3. 你已经玩了5了。
让我们编写一个磁偏角程序:
package com.l2cccp.work;

public class Mod
{
	public static void main(String args[])
	{
		int[] day= new int[] { 1, 2, 5 };

		System.out.println("You're already playing" + day[0] + " " + declension(day[0]));
		System.out.println("You're already playing" + day[1] + " " + declension(day[1]));
		System.out.println("You're already playing" + day[2] + " " + declension(day[2]));
	}

	public static String declension(int count)
	{
		String one = "day";
		String two = "of the day";
		String five = "days";

		if(count > 100)
			count %= 100;

		if(count > 20)
			count %= 10;

		switch(count)
		{
			case 1:
				return one;
			case 2:
			case 3:
			case 4:
				return two;
			default:
				return five;
		}
	}
}
通过运行该程序,您将得到以下结果:
Вы играете уже 1 день
Вы играете уже 2 дня
Вы играете уже 5 дней
一切都按照我们的需要进行,但是如果我们需要在一个结果中获得多个偏角怎么办?例如:
  1. 您已经玩了 11小时
  2. 你已经玩了2零4小时了。
  3. 您已经玩了 59小时
我们不能为我们需要的每个单词编写一个附加的词尾变化方法。让我们编写一个像这样的磁偏角程序:
package com.l2cccp.work;

public class Mod
{
	public static void main(String args[])
	{
		int[] day = new int[] { 1, 2, 5 };
		int[] hour = new int[] { 1, 4, 9 };

		System.out.println("You're already playing" + day[0] + " " + declension(day[0], "Days") + " And " + hour[0] + " " + declension(hour[0], "Hour"));
		System.out.println("You're already playing" + day[1] + " " + declension(day[1], "Days") + " And " + hour[1] + " " + declension(hour[1], "Hour"));
		System.out.println("You're already playing" + day[2] + " " + declension(day[2], "Days") + " And " + hour[2] + " " + declension(hour[2], "Hour"));
	}

	public static String declension(int count, String type)
	{
		String one = "";
		String two = "";
		String five = "";

		if(type.equals("Days"))
		{
			one = "day";
			two = "of the day";
			five = "days";
		}
		else if(type.equals("Hour"))
		{
			one = "hour";
			two = "hours";
			five = "hours";
		}

		if(count > 100)
			count %= 100;

		if(count > 20)
			count %= 10;

		switch(count)
		{
			case 1:
				return one;
			case 2:
			case 3:
			case 4:
				return two;
			default:
				return five;
		}
	}
}
通过运行该程序,您将得到以下结果:
Вы играете уже 1 день и 1 час
Вы играете уже 2 дня и 4 часа
Вы играете уже 5 дней и 9 часов
由于我们的方法被描述为公共“ public”,因此您可以轻松地从任何包中调用它:
Mod.declension(count, type);
仅此而已,我希望这对某人有用。 祝您掌握 Java 语言好运。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION