Difference between revisions of "LlListInsertList/ja"

From Second Life Wiki
Jump to navigation Jump to search
(Initial translation)
 
 
(2 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{#vardefine:spec_between|'''start''' が '''dest''' の最後を超えると、'''src''' が '''dest''' の最後に連結されます。NULL 要素は追加されません。これを防ぐためには、最初にリストに空の要素を作成してください。同じような結果が {{LSLGC/ja|Negative Index|負のインデックス}} を使った時に発生します。}}
{{LSL_Function/negative index/ja|true|start}}{{LSL_Function/ja
{{LSL_Function/negative index/ja|true|start}}{{LSL_Function/ja
|func_id=200|func_sleep=0.0|func_energy=10.0
|func_id=200|func_sleep=0.0|func_energy=10.0
|func=llListInsertList|return_type=list
|func=llListInsertList|return_type=list|p1_type=list|p1_name=dest|p2_type=list|p2_name=src|p3_type=integer|p3_name=start
|p1_type=list|p1_name=dest|p1_desc=挿入先の配列
|p2_type=list|p2_name=src|p2_desc=挿入内容の配列
|p3_type=integer|p3_name=start|p3_desc=挿入位置のインデックス
|func_footnote
|func_footnote
|func_desc=配列の特定の位置に別の配列を挿入して返します。
|func_desc
|return_text='''dest''' '''start''' の位置に '''src''' を挿入した配列
|return_text='''dest''' の全ての要素を含むが、 '''src''' '''start''' に挿入されたリスト
|spec
|spec
|caveats
|caveats
|constants
|constants
|examples=
|examples=
<lsl>
<source lang="lsl2">
list numbers = [3, "three", 2, "two", 1, "one"];
list numbers = [3, "three", 2, "two", 1, "one"];
default
default
Line 29: Line 27:
     }
     }
}
}
</lsl>
</source>
|helpers
|helpers
|also_functions={{LSL DefineRow|{{LSLG/ja|llDeleteSubList}}}}
|also_functions={{LSL DefineRow|{{LSLG/ja|llDeleteSubList}}}}
Line 38: Line 36:
|also_articles
|also_articles
|notes=
|notes=
引数の配列は変更されないことに注意してください。処理結果は新規の配列として戻り値に設定されます。(戻り値を直接操作するのでないならば) 戻り値を配列へ代入しなければなりません。
入力リストは変更されないことに注意してください。その代わりに、リストが新規作成されます。このため、(戻り値を直接操作するのでなければ) これを変数に格納しておくのが重要です。


ヒント: 配列を別の配列の先頭に加える場合は、単純にそれらを連結すればすれば済みます。
ヒント: リスト変数を別のリスト変数の先頭に加える場合は、単純にそれらを連結すればすれば済みます。(新しい要素が入っているリストを先に)


<lsl>
<lsl>

Latest revision as of 07:13, 25 February 2016

要約

関数: list llListInsertList( list dest, list src, integer start );

dest の全ての要素を含むが、 srcstart に挿入されたリストを list で返します。

• list dest
• list src
• integer start

start には 負のインデックス を使用できます。

仕様

インデックス
先頭 0 -length
末尾 length - 1 -1

インデックス

  • 正のインデックスは先頭から数えます。先頭の要素は 0、末尾の要素は (length - 1) のインデックスを持ちます。
  • 負のインデックスは末尾から数えます。先頭の要素は -length、末尾の要素は -1 のインデックスを持ちます。

警告

  • start が正常なインデックス範囲を外れていても、スクリプトはエラー表示を出さずに処理を続けます。
All Issues ~ Search JIRA for related Bugs

サンプル

list numbers = [3, "three", 2, "two", 1, "one"];
default
{
    state_entry()
    {
        llOwnerSay(llDumpList2String(numbers, ","));
        // Object: 3,three,2,two,1,one
        integer index = llListFindList(numbers, [2]);
        if (index != -1)
        {
            numbers = llListInsertList(numbers, [2.5, "two and a half"], index);
            llOwnerSay(llDumpList2String(numbers, ","));
            // Object: 3,three,2.500000,two and a half,2,two,1,one
        }
    }
}

注意点

入力リストは変更されないことに注意してください。その代わりに、リストが新規作成されます。このため、(戻り値を直接操作するのでなければ) これを変数に格納しておくのが重要です。

ヒント: リスト変数を別のリスト変数の先頭に加える場合は、単純にそれらを連結すればすれば済みます。(新しい要素が入っているリストを先に)

<lsl> list oldList = ["B", "C", "D"]; list newItem = ["A"]; list newlist = newItem + oldList; </lsl>

関連項目

特記事項

Search JIRA for related Issues

Signature

function list llListInsertList( list dest, list src, integer start );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。