私はいくつかの文字列といくつかの整数値を含むクラスを持っています。プログラムは、バブルソートを使用して、呼び出されたstudentID内の特定の整数でソートする必要があります。C#で複数の変数型を持つクラスにバブルソートを実装する
私が遭遇する問題は、変数に正しくアクセスすることです。私たちは、クラス内の変数をprivateにする必要があります。そのため、生の値は実際のクラス内以外の場所から直接アクセスすることはできません。私はこのような何かを持っている
は、Xのすべての発生のために
public class Student {
// PRIVATE strings and ints
public Student() {
// set variables to text fields
}
public void bubbleSort() {
int i, j, temp;
for (i = (x-1); i >= 0; i--) {
for (j = 1; j <= i; j++) {
if(x[j - 1] > students[j]) {
temp = x[j - 1];
x[j - 1] = x[j];
x[j] = temp;
}
}
}
}
}
を設定し、私はmyStudent.studentIDの価値を持っている必要があります。バブルソートはクラス内で実装されることを意図していますが、どのように呼び出すかわかりません。必要なフィールドをプライベートに設定すると、ソートされる情報を引き出す方法が見つけられません。
助けてくれてありがとうございました。私はそれを進めて、火曜日に問題がある場合は、彼と話をしなければなりません。 – Spada05
私はあなたがプロパティを使用することを許可されるべきであると非常に肯定的です。フィールドを公開することは悪い習慣です(クラスがアクセスを制御せず、変更に反応できないため)。しかし、プロパティはその問題を緩和するために存在します。 – Femaref
不必要に書き込み可能なプロパティを公開することは、ほとんど悪いことです。ほとんどの場合、このコードはpublicフィールドと同等です。 (これは異なるリフレクションと*バイナリ*バージョン管理のセマンティクスを持っています) – CodesInChaos