Подскажите как реализовать вот такую идею List'ом (наверное, только не List в List'е), ибо двумерные, рваные массивы не подходят по условиям задачи, Dictionary тоже.
Идея такова:
Первое, что пришло в голову. Если у вашего Field другие поля, то поправьте (например, Color на string). Инициализирует список длиной 64 значениями Field с чередующимся цветом клетки.
struct MapFiled
{
public readonly char Row;
public readonly int Line;
public readonly Color Color;
public MapFiled(char row, int line, Color color)
{
Row = row;
Line = line;
Color = color;
}
}
static void Main(string[] args)
{
List<MapFiled> map = new List<MapFiled>(64);
bool isFieldBlack = true;
for (char row = 'A'; row <= 'H'; row++, isFieldBlack = !isFieldBlack)
for (int line = 1; line <= 8; line++, isFieldBlack = !isFieldBlack)
map.Add(new MapFiled(row, line, isFieldBlack ? Color.Black : Color.White));
}
Самый красивый код (перевод на С# оставлен в качестве упражнения для читателя):
var rows = "12345678";
var cols = "abcdefgh";
var fields = [];
for (var i = 0; i < rows.length; i++) {
for (var j = 0; j < cols.length; j++) {
fields.push({
pos: cols[j] + rows[i],
color: ((i + j) % 2)? "black" : "white"
});
}
}
var html = "";
for (var f = 0; f < fields.length; f++) {
html += "<div class='field " + fields[f].color + "'>" + fields[f].pos + "</div>"
}
document.querySelector(".board").innerHTML = html;
//console.log(JSON.stringify(fields));
.board {
width:200px;
height:200px;
border:1px solid black;
}
.field {
width:12.5%;
height:12.5%;
display:inline-block;
text-align:center;
line-height: 150%;
}
.white {
color:#00000088;
background:white;
}
.black {
color:#ffffff88;
background:black;
}
<div class="board"></div>
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть сущность "настройки", в которой хранится путь к даннымЕсть сущности, которые пользуются настройками, чтобы строить свой путь к данным
Я очень плох в сокетах и JS, поэтому прошу понимания)) Вдохновленный этой статьей, решил попробовать написать подобное у себяУ меня есть PHP скрипт,...