3 回答

TA貢獻1797條經(jīng)驗 獲得超6個贊
正如這段代碼
while (true) {
永遠不會退出,此循環(huán)下面的代碼無法訪問
也許System.exit(0);
應(yīng)該只是打破循環(huán)while
。
break
a中的注釋switch
不會打破while
循環(huán)

TA貢獻1829條經(jīng)驗 獲得超7個贊
將這些行放入 while 循環(huán)中
Collections.sort((themobile, new MobileByBrandName());
System.out.println("Sorted by brand name" + themobile);
Collections.sort(themobile, new MobileByMoNum());
System.out.println("Sorted by brand name" + themobile);
Collections.sort(themobile, new MobileByInS());
System.out.println("Sorted by brand name" + themobile);
Comparator.comparing您還可以使用java 8 及以上版本的可用來簡化比較操作。喜歡:
Comparator<Mobile> comparator = Comparator.comparing(new Function<Mobile,
@Override
public String apply(Mobile t) {
return t.getBrandName();
}
}).thenComparingInt(new ToIntFunction<Mobile>() {
@Override
public int applyAsInt(Mobile t) {
return t.getModelNumber();
}
}).thenComparingInt(new ToIntFunction<Mobile>() {
@Override
public int applyAsInt(Mobile t) {
return t.getInternalMemoryS();
}
});
Collections.sort(themobile, comparator);

TA貢獻1936條經(jīng)驗 獲得超7個贊
while永遠不會到達循環(huán)后的代碼。您需要編寫一些邏輯來跳出 while 循環(huán)。解決此問題的一種簡單方法是:
int choice = -1;
while (choice != 0) {
choice = input.nextInt();
switch (choice) {
//...other cases
case 0:
System.out.println("Thank you for using a Mobile arraylist");
}
}
Collections.sort(...);
System.out.println(...);
添加回答
舉報