Jump to content
  • 0

Replace int with images


Question

Posted

I'm using this to convert numbers from 1 to 10 into images,

 

public final static String number(int numberid)
	{
		Map<Integer, String> number;
		number = new FastMap<Integer, String>();

		number.put(1, "<icon._num1 width=16 height=16>");
		number.put(2, "<icon._num2 width=16 height=16>");
		number.put(3, "<icon._num3 width=16 height=16>");
		number.put(4, "<icon._num4 width=16 height=16>");
		number.put(5, "<icon._num5 width=16 height=16>");
		number.put(6, "<icon._num6 width=16 height=16>");
		number.put(7, "<icon._num7 width=16 height=16>");
		number.put(8, "<icon._num8 width=16 height=16>");
		number.put(9, "<icon._num9 width=16 height=16>");
		number.put(10, "<icon._num10 width=16 height=16>");
		return number.get(numberid);
	}

 

 

is there a way to replace  each number automatically when found in string, for example : the number 123 to be converted into

"<icon._num1 width=16 height=16>"+"<icon._num2 width=16 height=16>"+"<icon._num3 width=16 height=16>"

 

3 answers to this question

Recommended Posts

  • 0
Posted
public final static String retrieveIcon(int number)
{
	return "<icon._num" + number + " width=16 height=16>";
}

About your second ask, you could parse the int 123 as a string and loop over each encountered character and refer to retrieveIcon method - if you had only one digit. Since you got potentially 2 (with "10"), it's not possible, since it will be cut to 0 and 1.

 

My example can work if you move your notation from 0 to 9 instead of 1 to 10.

 

And don't build random Map on a getter, it's terrible.

  • Like 1
  • Upvote 1
  • 0
Posted
4 hours ago, Tryskell said:

public final static String retrieveIcon(int number)
{
	return "<icon._num" + number + " width=16 height=16>";
}

About your second ask, you could parse the int 123 as a string and loop over each encountered character and refer to retrieveIcon method - if you had only one digit. Since you got potentially 2 (with "10"), it's not possible, since it will be cut to 0 and 1.

 

My example can work if you move your notation from 0 to 9 instead of 1 to 10.

 

And don't build random Map on a getter, it's terrible.

About the 2nd ask

 

public final static String retrieveIcon(int... values) 

Can do that. He just have to separate the values 

retrieveIcon(5,8,10,4,3)

  • 0
Posted (edited)
1 hour ago, melron said:

About the 2nd ask

 

public final static String retrieveIcon(int... values) 

Can do that. He just have to separate the values 

retrieveIcon(5,8,10,4,3)

 

Yes and no (the for loop isn't the problem btw :P), his ask is to cut "123" into icon1, icon2 and icon3. That's not possible with "581043", "10" will be cut "1" and "0", not "10". That's why I suggested to change his notation from 1 to 10 > 0 to 9.

 

And if you say "10" is the only number with a "0" and can be actually be parsed, then what about "11", "12", "13",... :P.

Edited by Tryskell

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...