2
0

IntList.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /*
  2. * This program is free software: you can redistribute it and/or modify it under
  3. * the terms of the GNU General Public License as published by the Free Software
  4. * Foundation, either version 3 of the License, or (at your option) any later
  5. * version.
  6. *
  7. * This program is distributed in the hope that it will be useful, but WITHOUT
  8. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
  10. * details.
  11. *
  12. * You should have received a copy of the GNU General Public License along with
  13. * this program. If not, see <http://www.gnu.org/licenses/>.
  14. */
  15. package com.l2jserver.gameserver.script;
  16. /**
  17. * @author Luis Arias
  18. *
  19. */
  20. public class IntList
  21. {
  22. public static int[] parse(String range)
  23. {
  24. if (range.contains("-"))
  25. {
  26. return getIntegerRange(range.split("-"));
  27. }
  28. else if (range.contains(","))
  29. {
  30. return getIntegerList(range.split(","));
  31. }
  32. int[] list = { getInt(range) };
  33. return list;
  34. }
  35. private static int getInt(String number)
  36. {
  37. return Integer.parseInt(number);
  38. }
  39. private static int[] getIntegerList(String[] numbers)
  40. {
  41. int[] list = new int[numbers.length];
  42. for (int i = 0; i < list.length; i++)
  43. list[i] = getInt(numbers[i]);
  44. return list;
  45. }
  46. private static int[] getIntegerRange(String[] numbers)
  47. {
  48. int min = getInt(numbers[0]);
  49. int max = getInt(numbers[1]);
  50. int[] list = new int[max - min + 1];
  51. for (int i = 0; i < list.length; i++)
  52. list[i] = min + i;
  53. return list;
  54. }
  55. }