JavaRush /Java Blog /Random-TW /模除運算符
L2CCCP
等級 9

模除運算符

在 Random-TW 群組發布
模除運算符是運算符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. 你已經玩了24小時了。
  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