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

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

從字符串加載板并存儲在二維數(shù)組中

從字符串加載板并存儲在二維數(shù)組中

C#
浮云間 2022-11-22 15:33:19
我正在嘗試將由 1 和 0 組成的棋盤存儲在二維數(shù)組中。我正在嘗試將 3 組 3 個值返回到數(shù)組中,但它表示 csvArray[][] 中需要一個值。我已經(jīng)創(chuàng)建了一個由 1 和 0 組成的字符串,并將它們分成由“\n”分隔的子字符串    int[][] loadBoardfromString(string Data)    {        string csvBoard = "0,1,0\n2,0,1\n0,0,1";        string[] csvArray = csvBoard.Split('\n');        return csvArray[][];                            }
查看完整描述

2 回答

?
心有法竹

TA貢獻1866條經(jīng)驗 獲得超5個贊

這是您需要的:


    string csvBoard = "0,1,0\n2,0,1\n0,0,1";

    int[][] csvArray =

        csvBoard

            .Split('\n') // { "0,1,0", "2,0,1", "0,0,1" }

            .Select(x =>

                x

                    .Split(',') // { "X", "Y", "Z" }

                    .Select(y => int.Parse(y)) // { X, Y, Z }

                    .ToArray())

            .ToArray();


查看完整回答
反對 回復(fù) 2022-11-22
?
人到中年有點甜

TA貢獻1895條經(jīng)驗 獲得超7個贊

我猜這是某種家庭作業(yè),所以我會嘗試使用最基本的解決方案,這樣老師就不知道了:)。


        string csvBoard = "0,1,0\n2,0,1\n0,0,1";

        // This splits the csv text into rows and each is a string

        string[] rows = csvBoard.Split('\n');

        // Need to alocate a array of the same size as your csv table 

        int[,] table = new int[3, 3];

        // It will go over each row

        for (int i = 0; i < rows.Length; i++)

        {

            // This will split the row on , and you will get string of columns

            string[] columns = rows[i].Split(',');

            for (int j = 0; j < columns.Length; j++)

            {

                //all is left is to set the value to it's location since the column contains string need to parse the values to integers

                table[i, j] = int.Parse(columns[j]);

            }

        }


        // For jagged array and some linq

        var tableJagged = csvBoard.Split('\n')

                                  .Select(row => row.Split(',')

                                                 .Select(column => int.Parse(column))

                                                 .ToArray())

                                   .ToArray();

這是我關(guān)于如何改進它以便學(xué)習(xí)這些概念的建議。制作一個更適用的方法,無論大小如何,它都可以溢出任何隨機 csv,并返回一個二維數(shù)組而不是鋸齒狀數(shù)組。當(dāng)有人沒有將有效的 csv 文本作為參數(shù)放入您的方法時,也嘗試處理這種情況。


查看完整回答
反對 回復(fù) 2022-11-22
  • 2 回答
  • 0 關(guān)注
  • 118 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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