Student_Engineer Ответов: 2

Как вызвать значение списка в другом классе В C#?


Привет.Я легок, но у меня есть вопрос, чтобы не знать.Во-первых, мне очень жаль, что я так легко прошу вас об этом.У меня есть список как список.Это значение меньше 10 в случае чисел, как показано в списке.Я хочу напечатать это значение в другом классе. Как я могу это напечатать?


Цифры.в CS

public List<string> numberlist=new List<string>



CalculateProcess.в CS

//В этом классе я хочу напечатать значение в этом списке.Как мне печатать.

Что я уже пробовал:

Цифры.в CS
public List<string> numberlist=new List<string>


CalculateProcess.в CS

// попробуйте код.
Console.Writeline(numberlist);  or  NumberFiles.Send(path,number,numberlist,"success");

2 Ответов

Рейтинг:
1

OriginalGriff

Это не очень сложно, но может показаться таковым. Что вам нужно, так это использовать экземпляр класса numbers для доступа к списку.
И это, вероятно, ничего не значит, но это то, что вы делаете каждый день и даже не думаете об этом.

Так... давайте не будем обращать на это внимания и подумаем о машине. Предположим, вы кладете свой мобильный телефон в бардачок своей машины, а затем меняете его на новый. Если вы откроете бардачок, вы ожидаете, что ваш мобильный телефон будет там? Конечно, нет! Они оба являются "вашим автомобилем", но фактический экземпляр транспортного средства изменился. И вы знаете, что: "ваша машина" отличается от "моей машины", "его машины", "ее машины". И к одному автомобилю можно обратиться по нескольким названиям: "ваш автомобиль", "этот автомобиль", "тот автомобиль" - все они относятся к одному и тому же транспортному средству.
Чтобы ездить по магазинам, вам нужно иметь правильный экземпляр автомобиля: "ваш автомобиль", а не "мой автомобиль".

И классы одинаковы: чтобы использовать элементы класса, вам нужно указать, о каком экземпляре класса вы говорите. Внутри определения класса это просто: у вас есть this (Явно или неявно) , который говорит "текущий экземпляр", какой бы он ни был.
Но вне класса все гораздо сложнее: вы должны найти экземпляр и обратиться к нему:

Car myCar = new Car("Mercedes", "A-class", Color.Black);
...
myCar.Engine.Start();</pre

<pre lang="c#">Car yourCar = new Car("Ford", "Fiesta", Color.Red);
...
yourCar.GLoveBox.Add(yourMobile);


Таким образом, чтобы получить доступ к вашему списку, вам просто нужно предоставить экземпляр (через переменную) и указать коллекцию.

Другой способ-составить список static, и получить доступ к нему через имя класса - но в этом случае существует только один список для всех экземпляров класса (если хотите, статический перчаточный ящик будет иметь червоточину в нем, что означает, что один и тот же перчаточный ящик будет доступен из всех автомобилей - не практично в реальном мире и, вероятно, не то, что вы хотите в своем приложении!)


[no name]

Большое вам спасибо за объяснение. Я думаю, что понял и понял что-то вроде этого.
Это правда?

Вычислить старый список=новый вычислить();


CalculateProcess NewList=новый CalculateProcess();
NewList.Add(OldList);

OriginalGriff

Вероятно, нет, если только ваш класс CalculateProcess не содержит метод под названием "Add" или не является производным от класса коллекции, такого как список.
Ваш класс чисел содержит список - почему бы вам не использовать его?

Может быть, вам будет легче объяснить, чего вы здесь добиваетесь (а не детали вашего решения), чтобы мы оба лучше понимали, что вам нужно делать?

[no name]

Спасибо.Моя цель - напечатать список.

OriginalGriff

:вздыхать:
Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только то, что вы печатаете для работы.

Таким образом, мы не знаем, "какой список", "какой экземпляр", для чего предназначены ваши классы, что они содержат или должны содержать, что должен делать остальной ваш код, или вообще ничего, если вы явно не скажете нам! Перестаньте пытаться печатать как можно меньше - это никому не поможет ...

[no name]

Прости, я тебя заставляю.
Существуют методы, которые выполняют операции выбора вставки базы данных в первом классе. public void MNumbers () {// вставить базу данных. }

Вычислить класс процесса-это я хочу напечатать значение списка в первом классе. Я хочу напечатать значение этого поля. Как мне позвонить?

Как я могу получить значение списка во втором классе, потому что список уже получает свое значение.
Большое вам спасибо за вашу помощь

OriginalGriff

Итак, начните с кода, который создает экземпляр первого класса - вам нужно было сделать это где-то, чтобы вызвать MNunmbers на нем, чтобы загрузить информацию из БД.
Где-то там будет такой код, как

myVariable = новые числа();
...
моя вариабельность.MNumbers();

Что происходит с myVariable после этого? Где это объявлено? Когда это выходит за рамки?

[no name]

Я мог бы получить значение numberlist. Но я не сделал никакой вставки, связанной с numberlist в numbers.cs.
Я не вставлял numberlist в виде таблицы, поэтому я не писал запрос insert и не могу его написать, потому что я не делал этого здесь.
Позволь мне сказать тебе.

У вас есть класс в ваших руках.
Этот класс имеет переменную типа списка, например numberlist.
Вы можете получить значение в этой переменной.
И это значение, которое вы получаете (список возвращаемых значений) в другом классе, как вы можете вызвать и использовать.Также спасибо Вам за Вашу поддержку

Рейтинг:
0

Maciej Los

Проверьте мой прошлый ответ: Как я могу вызвать список в другом классе?[^]


[no name]

Привет.Я делаю те же самые методы в классе. Я хочу вызвать другой класс и распечатать его.
Спасибо за вашу помощь.