Go の for ループからインターフェイスのリストを返すにはどうすればよいですか?
Go 言語では、for ループを通じて配列、スライス、マップなどのデータ構造をトラバースできます。ただし、場合によっては、ループ内のインターフェイスのリストを返す必要があります。インターフェイスは複数の具象型を表すことができる抽象型であるため、これは一般的な要件です。この記事では、Go で for ループを使用してインターフェイスのリストを返す方法を紹介します。まず、Go のインターフェイス型と型アサーションの概念を理解する必要があります。
質問内容
Goのforループからインターフェースリストを返すにはどうすればよいですか? 次のデータがあるとします:
id | ###名前###プロジェクトタイプ | |
---|---|---|
プロジェクト名 | 1 | |
プロジェクト名 | 1 | |
プロジェクト名 | 1 | |
プロジェクト名 | 2 | |
プロジェクト名 | 2 | |
プロジェクト名 | 3 | ###7### |
3 | 8 | |
3 | 9 | |
4 | 10 | |
4 | 次の go コードを使用して、project_type=1 と project_type=2 の 2 つのリストを取得できます。 |
、project_type は 2 より大きいので、インターフェイスを取得する必要があります{} list、以下のようにコードを書き直そうとしましたが、次に何を書けばよいのかわかりません。goのforループからインターフェースリストを返すにはどうすればよいですか?提案ありがとう。
func (d *db) projectlist(type, uid string, size uint64) (interface{}, interface{}, error) { type resp struct { name string `json:"name"` id string `json:"id"` projecttype string `json:"project_type"` } var project_type_1 []*resp var project_type_2 []*resp sql = fmt.sprintf(sql, where.string()) _, err := d.ctx.db().selectbysql("select * from project where project_type=1 order by rand() limit 10").load(&project_type_1) _, err = d.ctx.db().selectbysql("select * from project where project_type=2 order by rand() limit 10").load(&project_type_2) return project_type_1, project_type_2, err }
Solution
すべてのタイプの結果が合計 10 件ある場合:
リーリー以上がGo の for ループからインターフェイスのリストを返すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Go Crawler Collyのキュースレッドの問題は、Go言語でColly Crawler Libraryを使用する問題を調査します。 �...

Go言語での文字列印刷の違い:printlnとstring()関数を使用する効果の違いはGOにあります...

大企業または有名なオープンソースプロジェクトによって開発されたGOのどのライブラリが開発されていますか? GOでプログラミングするとき、開発者はしばしばいくつかの一般的なニーズに遭遇します...

redisstreamを使用してGo言語でメッセージキューを実装する問題は、GO言語とRedisを使用することです...

Golandのカスタム構造ラベルが表示されない場合はどうすればよいですか?ゴーランドを使用するためにGolandを使用する場合、多くの開発者はカスタム構造タグに遭遇します...

GO言語で構造を定義する2つの方法:VARとタイプのキーワードの違い。構造を定義するとき、GO言語はしばしば2つの異なる執筆方法を見ます:最初...

ポインター構文とviperライブラリの使用における問題への取り組みGO言語でプログラミングするとき、特にポインターの構文と使用を理解することが重要です...
