Difference between revisions of "LlList2String"
Jump to navigation
Jump to search
All Issues ~ Search JIRA for related Bugs
Brangus Weir (talk | contribs) (Corrected example to avoid laggy construction) |
m (cleanup) |
||
Line 14: | Line 14: | ||
{ | { | ||
list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; | list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; | ||
integer i; | integer i = 0; //set the initial value here because it will be set here anyway. | ||
integer | //and since the compiler is non-optimizing, putting it in the for begin | ||
//would have the effect of running it twice. | |||
integer end = llGetListLength(my_list); //evaluate this ONCE do not check inside | |||
//the for loop. | |||
//for(i=0; i<llGetLIstLength(my_list); ++i) | |||
for ( | //is a bad programming practice (it is slow) | ||
for (; i<end; ++i) | |||
{ | { | ||
llOwnerSay("string=" + llList2String(my_list,i) | llOwnerSay("string=" + llList2String(my_list,i) |
Revision as of 18:04, 22 June 2007
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: string llList2String( list src, integer index );188 | Function ID |
0.0 | Forced Delay |
10.0 | Energy |
Returns a string that is at index in src.
• list | src | |||
• integer | index |
index supports negative indexes.
If the type of the entry at index in src is not a string it is typecast into a string.
If index is out of range it returns a null string.
Specification
Index | Positive | Negative |
---|---|---|
First | 0
|
-length
|
Last | length - 1
|
-1
|
Indexes
- Positive indexes count from the beginning, the first item being indexed as
0
, the last as(length - 1)
.
- Negative indexes count from the far end, the first item being indexed as
-length
, the last as-1
.
Caveats
- If index is out of bounds the script continues to execute without an error message.
Examples
// Best viewed in Chat History (ctrl-h) default { state_entry() { list my_list = ["a", 1, 2.0, <1,2,3>, <1,2,3,4>, llGetOwner()]; integer i = 0; //set the initial value here because it will be set here anyway. //and since the compiler is non-optimizing, putting it in the for begin //would have the effect of running it twice. integer end = llGetListLength(my_list); //evaluate this ONCE do not check inside //the for loop. //for(i=0; i<llGetLIstLength(my_list); ++i) //is a bad programming practice (it is slow) for (; i<end; ++i) { llOwnerSay("string=" + llList2String(my_list,i) + "\n integer=" + (string)llList2Integer(my_list,i) + "\n float=" + (string)llList2Float(my_list,i) + "\n vector=" + (string)llList2Vector(my_list,i) + "\n rot=" + (string)llList2Rot(my_list,i) + "\n key=" + (string)llList2Key(my_list,i) ); } } }
See Also
Articles
• | Negative Index |