解かなければならない練習問題があるのですが、頭に浮かびません。問題は次のとおりです。次のプログラムは、一連の文字列を昇順で出力します。sort は文字列の配列のみをソートすることに注意してください。タイプ T のオブジェクトをソートするように書き直してください。ここで、T は一般的なタイプ名としてソート ヘッダーに導入され、T は Comparable を実装します。変更は、並べ替えのヘッダーと本文の変更に限定する必要があります。だから私が与えられたコードは次のとおりです。
class SortNames {
static void sort(String[] s) {
for (int i = 0; i<s.length; i++) {
for (int j = i+1; j < s.length; j++) {
if (s[i].compareTo(s[j])>0) {
String t;
t = s[i]; s[i] = s[j]; s[j] = t;
}
}
}
}
public static void main(String[] args) {
String[] names = {"Pete","Jill","May","Anne","Tim"};
sort(names);
for (String s:names){
System.out.println(s);
}
}
だから私がしたことは:
class TestSort{
static void sort(T[] s) {
for (int i = 0; i<s.length; i++) {
for (int j = i+1; j < s.length; j++) {
if (s[i].compareTo(s[j])>0) {
Object t;
t = s[i]; s[i] = s[j]; s[j] = t;
}
}
}
}
public static void main(String[] args) {
int[] numbers = {3,6,2,7,9,1,8};
sort(numbers);
for (int a:numbers){
System.out.println(a);
}
}
コードをコンパイルすると、次のようになります。
TestSort.java:3: error: cannot find symbol
static void sort(T[] s) {
^
symbol: class T
location: class TestSort
1 error
なにが問題ですか?:(誰かが私に読むための良い情報源を勧めてくれませんか?明日それで試験があります:(事前に感謝します!