質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
URL

URL(ユニフォームリソースロケータ)とは、インターネット上のリソース(Webページや電子メールの宛先等)を特定するための形式的な記号の並びの事を言う。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

Q&A

解決済

1回答

307閲覧

一部分だけが異なる複数のURLを生成したい

goki

総合スコア13

URL

URL(ユニフォームリソースロケータ)とは、インターネット上のリソース(Webページや電子メールの宛先等)を特定するための形式的な記号の並びの事を言う。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

配列

配列は、各データの要素(値または変数)が連続的に並べられたデータ構造です。各配列は添え字(INDEX)で識別されています。

0グッド

0クリップ

投稿2018/02/18 17:22

編集2018/02/18 17:31

プログラミング超初心者です。
Swiftを勉強しているのですが
http://○○○/xxx/A
http://○○○/xxx/B
http://○○○/xxx/C
というように最後尾だけが異なるURLを繰り返し処理などで簡単に生成し、リクエストしたいのですが、どのようにすればいいのかいまいちわかりません。

Swift4.0

1 2let urlBase = "http://○○○/xxx/" 3 4let array = ["A", "B", "C"] 5 6func urlCombine() -> String { 7 for index in array { 8 9 let combinedUrl = urlBase + array[index] 10 11 return combinedUrl 12 } 13 14let url = URL(String: combinedUrl) 15

とりあえず上記のように考えてみたのですが、for-in文のところで
Cannot subscript a value of type '[String]' with an index of type 'String'
とエラーが出てしまいます。
方針として上記のやり方で正しい場合はエラーの解決方法を教えていただきたいです。
より良いやり方がある場合はそちらを教えていただけると幸いです。よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

for element in array

と書いた場合ループの各回で制御変数elementに束縛される値はarrayの指標ではなく要素の値だと思います。ゆえに

urlBase + array[index]

では期待通りのことを表現していません。要素なのですから制御変数をindexにするのもおかしいですね。

swfit

1for resourceName in array { 2 let combinedUrl = urlBase + resourceName 3 ... 4}

のように記述するのが自然ではないかと思います。

投稿2018/02/18 23:28

KSwordOfHaste

総合スコア18394

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

goki

2018/02/19 01:48

早速のご回答ありがとうございます。 確かに! 基礎的なことを勘違いしていました。 ありがとうございましたm(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問