JavaRush /Java Blog /Random-KO /모듈로 나눗셈 연산자
L2CCCP
레벨 9

모듈로 나눗셈 연산자

Random-KO 그룹에 게시되었습니다
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
우리는 이 연산자가 어떻게 작동하는지, 그리고 어떻게 사용하는지 알아냈습니다. 수량에 따라 단어를 활용하는 옵션입니다. 저는 자바 게임 에뮬레이터 개발자로 일하고 있기 때문에 메시지에 포함된 많은 단어가 활용되는 것이 매우 중요합니다. 예:
  1. 이미 1 일 동안 플레이하셨습니다 .
  2. 벌써 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. 1 일 1 시간 동안 플레이하셨습니다 .
  2. 2 일 4 시간 동안 플레이하셨습니다 .
  3. 5 일 9 시간 동안 플레이하셨습니다 .
필요한 모든 단어에 대해 추가 어형변화 방법을 작성할 수는 없습니다. 다음과 같은 편각 프로그램을 작성해 보겠습니다.
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