- 締切済み
array.indexof と array.laseindexofについて
dim x() as integer = new integer(7) {1,5,7,9,11,5,9,2} で、 array.indexof(x,9,4)はなぜ6がかえるのでしょうか。 lastindexofの場合は3がかえります。 また、array.lastindexof(x,5,4,3)は-1がかえされます。 なぜでしょうか。 すみませんが、教えてください。。。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- redfox63
- ベストアンサー率71% (1325/1856)
関連するQ&A
- Arrayについて
Dim ar(1 To 6) As Integer Dim i As Integer for i = 1 to 6 ar(i) = i + 1 Next というソースがあり、作成された ar(2,3,4,5,6,7)という配列を、 Array(2,3,4,5,6,7)のようにArray()の中に入れたいのですが上手くいきません。どのようにしたら良いでしょうか? Array(ar)としても駄目でした。
- ベストアンサー
- Visual Basic
- VB.NET parallel arrayからの取り出し方
VB.NET 初心者ですのでお手やわらかにお願いいたします。 今週の売利上げを各商品ごとにTextboxへInputします。それをSortして一番売り上げ数の高い数字とその商品名をLabelHighNumberとLabeItemlNameに出します。分かりやすいように3商品と簡単な数字を使いますのでご了承ください。input数字はすでにToInt32でConvertしてあるもとします。どうもこれでは、Sort後、売り上げ個数の高い18だけ引っ張ってきてOrangeがでてきません。Arrayの中で二つがつながってないんでしょうか。 商品名はすでにLabelでscreenにでていますので、売り上げ個数だけのInputになります。 このようなイメージです。 Apple 10 Banana 5 Orange 18 Dim strItemName() as string {"Apple", "Banana","orange"} Dim intInputProductNumber() as integer {10, 5, 18} Dim intIndexLocaion as integer ’一番高いIndexをとるためSortしました Array.Sort(inInputProductNumber) 'ここでIndexが一番大きい2をとりました。(0,1,2の中で) intIndexLocation = inputProductNumber (2) 'ここでは18と出てきます。 me.LabelHighNumber.text = indIndexLocation.toString ’しかし、Orangeとはでてきません。 me.LabelItemName.text = strProductName(intIndexLocation) よろしくご教示お願いいたします。
- ベストアンサー
- Visual Basic
- 技術用語の翻訳
英文マニュアルの翻訳を手伝っているのですが、専門家が日本語でどのように言うのか分からずに困っています。 プログラミングの「配列パラメータ」の説明で、 'Following used only for array parameters 'Range of array rows Dim IMAX as Integer 'Range of array cols Dim JMAX as Integer 'Range of array planes Dim KMAX as Integer 'Range of array books Dim LMAX as Integer 'Range of array shelfs Dim MMAX as Integer という部分があり、注釈行の「rows」や「cols」はそれぞれ「列」「行」と訳すのだろうな(逆でしょうか?)と想像は付くのですが、3次元以上の配列の場合、「planes」「books」「shelfs」は本当にそのまま「面」「本」「棚」と訳して通じるのだろうか? と、悩んでいます。 数学分野で教えていただけるかと一度質問をしたのですが、聞きたい内容を理解していただけるようにうまく質問できなかったため、改めてこちらで伺います。 よろしくお願いいたします。
- ベストアンサー
- その他([技術者向] コンピューター)
- EXCEL VBAで Arrayの使い方が判りません
あらかじめ、セル上にシート名を入れておき、 Arrayでシートを指定したいのですが、 うまく行きません 内容 Sub Macro2() 'Cells(2, 2) に 「"Sheet1","Sheet3","Sheet6"」 と入力されています Dim hani As String Dim hani2 As Variant hani = Cells(2, 2) hani2 = Array(hani) '下記がエラーになります Sheets(hani2).Select Sheets(hani2).Copy '以下略 End Sub 1)セル上にあらかじめ、配列の中身を入力しておく 2)その値を取得後、arrayでシートを指定する この2件はどうしても避けられないのです
- ベストアンサー
- オフィス系ソフト
- VB2005での関数への配列の参照渡しの方法
Visual Basic 2005で、 =============================================================== Function func(ByVal a As Integer, ByRef b() As Integer) As Integer a += 1 : b(0) = 1 : b(1) = 2 : b(2) = 3 Return 0 End Function ============================================================== という関数があったとしてメインのプロシージャに ================================================================ Dim c As Integer Dim d As Integer Dim e() As Integer = Array.CreateInstance(GetType(Integer), 10) d=7 c = func(d, e) ================================================================ と書き入れると結果はd=7(∵値渡し)、e(0)=1,e(1)=0,e(2)=0(∵参照渡し)となってしまうと思います。 e(0)=1,e(1)=2,e(2)=3としたい場合はどのように記述すればよいのでしょうか?
- ベストアンサー
- Visual Basic
- VB2005 初心者です。
文書中の番号を振りなおしたいのですが、やり方がよく分かりません。 Dim a As String=textbox1.text Dim b As Integer=a.IndexOf("【作品番号") Dim c As String=a.Substring(b,5) Dim d As Integer=c.Length Do While b <> -1 b=a.Indexof("【作品番号",b+1) d=d+5 Loop Dim f As Integer=Cstr((d-5)/5) Dim g As Integer=0 g=g+1 For h As Integer=1 To f Dim i As String=textbox1.text.Replace("【作品番号","【作品番号" & h & "】") Next 最初のループまでで文章中に【作品番号*】がいくつあるかを調べて、(f回)その回数文だけまたループを回して番号を振りたいのですが、何もおきません。 本当に初心者なので、皆さんが見たらありえない構文かも知れませんが、ご教授願います。。。 ちなみに、作品番号は2桁3桁にもなることもあり、全角の数字にしたいのです。 よろしくお願い致します。
- ベストアンサー
- Visual Basic
- SetとNothingの存在意味?
数値とオブジェクトの変数セットはそれぞれ、 Dim num as integer num = 5 Dim obj as Object set obj = new From set obj = Nothing ですが、 オブジェクトの場合でインスタンスを生成しない、単なる参照?別名? の場合はNothingは不要でしょうか? Dim obj as Object For x = 1 to 10 set obj = Form2 ' newとインスタンスを生成するのではなく、単なる参照 obj.Caption = str(x) & "回目" 'set obj = nothingは不要? Next x
- ベストアンサー
- Visual Basic
- arrayの中にarrayをほぞんすることはできますか?
String[] a = new String[10]; でstirng 保管するarrayができると思うのですが、 arrayのなかにほかのarrayを保管することは可能でしょうか? そのとき、どのようにイニシャライズすればよいのでしょうか? よろしくおねがいします。
- ベストアンサー
- Java
- arrayである値を持った要素のみを削除するすっきりした方法。
PHP4で,ある値を持った要素のみを削除したarrayをかえしたいのですが,たとえば,[d]と[e]をいう値をもった要素を削除したい場合, $a = array("a", "b", "c", "d", "e"); $eraseitem = array("d", "e"); $new_a = array(); foreach($a as $value); { if (!in_array($value, $erasesitem)) { $new_a[] = $value; } } とすれば,削除できますが,ほかに何かいい方法はないでしょうか。(デフォルトの関数などを使用してすっきりとできないのでしょうか。) 詳しい方,よろしくお願いします。
- ベストアンサー
- PHP
お礼
明快な回答ありがとうございます。 大変よく分かりました。 ありがとうございました。