Percentage sign
Please explain this code to me coz I'm a little bit confuse.
index = (index +1)% prefabs.Length
what's the use of the percentage sign in the code
Answer by Dave-Carlile · Apr 01, 2016 at 05:53 PM
You can look up any C# syntax using Google, but I'll give you a quick overview.
% is the modulus operator. It returns the remainder after division. For example, 5 / 3 is 1 with a remainder of 2. The modulus operator will return 2.
A useful feature is that you can create a rolling counter that automatically wraps back around to 0. This is what's being done in your example. Let's say that prefabs.Length is 3 and index starts out at 0. This is what several iterations through your code example would give you.
index = (0 + 1) % 3 = 1 % 3 = 1 // 1 divided by 3 is 0 with a remainder of 1 so index is now 1
index = (1 + 1) % 3 = 2 % 3 = 2 // 2 divided by 3 is 0 with a remainder of 2 so index is now 2
index = (2 + 1) % 3 = 3 % 3 = 0 // 3 divided by 3 is 1 with a remainder of 0 so index is now 0.
If you continue executing that code then index will progress from 0 to 2 and then back to 0 over and over. You don't have to code any if statements to change index back to 0 or anything, just keep adding and taking the remainder.
Your answer
Follow this Question
Related Questions
keep 10% of an array? 1 Answer
I want my button to give the player randomly 1 of 5 images after clicked. How do i do this? 0 Answers
Need help with rotation 1 Answer
Percentage calculation 1 Answer
Range Value based on Distance? 0 Answers