第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在c#中檢查列表中的特定項目

如何在c#中檢查列表中的特定項目

PHP
慕村225694 2024-01-20 16:07:25
目前,我正在開發(fā)一個由 200 個傳感器節(jié)點組成的網(wǎng)絡(luò)模擬器。在我的代碼中,我需要每個節(jié)點向其鄰居發(fā)送 hello 數(shù)據(jù)包。在上一步中,我編寫了一段代碼,將 hello 消息從特定節(jié)點廣播到其鄰居(它們是傳感器節(jié)點)?,F(xiàn)在,我需要這些傳感器節(jié)點將其隊列中的 hello 數(shù)據(jù)包重新轉(zhuǎn)發(fā)給其鄰居。我需要檢查傳感器節(jié)點的隊列是否已經(jīng)有一個 hello 數(shù)據(jù)包,以便將其重新轉(zhuǎn)發(fā)到該傳感器節(jié)點的鄰居。。。例如,我創(chuàng)建了這樣的 hello : Packet hello = new Packet(CNs[i].cnID, i, i, 0, CNs[i].cnDepth, DateTime.Now, "Hello, I am a Courier node near of you");數(shù)據(jù)包聲明如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace AUV_Topology{    class Packet        {            public int senderID;        public int nextID;        public int recieverID;        public int packetSequenceNum;        public int depth;        public DateTime sendingTime;        public String data;        public Packet(int sID, int nID, int rID, int pSecNum, int depth,DateTime sTime, String data)            {                this.senderID = sID;            this.nextID = nID;            this.recieverID = rID;            this.packetSequenceNum = pSecNum;            this.depth = depth;            this.sendingTime = sTime;            this.data = data;           }        }}為了確保傳感器節(jié)點隊列有從另一個節(jié)點收到的 hello 數(shù)據(jù)包,我使用“foreach”并檢查列表中的每個數(shù)據(jù)包是否包含“Hello,我是您附近的 Courier 節(jié)點”...不幸的是,我嘗試使用SNs[i]queue.contains("Hello, I am a Courier node near of you");其中SN[i]是傳感器節(jié)點數(shù)組,隊列是聲明如下的屬性:public List<Packet> queue = new List<Packet>();但我收到語法錯誤:參數(shù) 1:無法從“string”轉(zhuǎn)換為“AUV_Topology.Packet”AUVs_TOPOLOGY我怎樣才能做到這一點?這是一個可能的解決方案嗎: for(int j=0; j < NodeNum; j++) {      if (SNsNighbors[i, j] == 1)      {         String temp = SNs[i].queue.ToString();         if (temp.Contains("Hello"))         {         }          }      }
查看完整描述

1 回答

?
慕姐4208626

TA貢獻(xiàn)1852條經(jīng)驗 獲得超7個贊

如果queue是數(shù)據(jù)包列表,并且您想知道這些數(shù)據(jù)包中是否有一個data是 hello 消息,請確保您已導(dǎo)入 LINQ 并執(zhí)行以下操作:

SNs[i].queue.Any(pkt => pkt.data == "Hello, I am a Courier node near of you");

如果任何數(shù)據(jù)包具有該數(shù)據(jù),則返回 bool true。如果要檢索包含此數(shù)據(jù)的第一個數(shù)據(jù)包,請將 Any 替換為 First。如果多個數(shù)據(jù)包都有它并且您希望所有數(shù)據(jù)包都將其交換為Where

附:在 C# 中,我們以首字母大寫字母命名公共成員,例如 Data、Queue 等,并且我們更喜歡公共屬性而不是公共變量。此外,如果使用 FIFO 隊列來建模隊列更合適,則 System.Collections.Generic 命名空間與 List 一起具有其中之一


查看完整回答
反對 回復(fù) 2024-01-20
  • 1 回答
  • 0 關(guān)注
  • 143 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號