我在這裏有我的代碼,在這裏我正在做一些簡單的數組的東西。本來這是我工作的成果:帶開關語句的基本數組
- 輸出:
- 輸入項目:_ //我不知道爲什麼我應該有這個。
- 主菜單
- 添加項目//顯示列表
- 移除項//顯示列表;並搜索要刪除的特定項目。
- 排序項//上市
- 升階
- 降序
- 刪除列表//應該返回到選項1是添加項目
- 退出
import java.util.Scanner;
import java.util.Arrays;
import java.util.*;
public class MainArray{
public static void main(String[] args){
Scanner user_input = new Scanner(System.in);
int choice;
int array[] = new int[10]; //Default Size.
choice = menu(user_input);
while(choice != 4){
switch (choice){
case 1: array = addItems(array, user_input); break;
case 2: array = removeItems(array, user_input); break;
case 3: array = sort(array); break;
default: break;
}
choice = menu(user_input);
}
System.out.println("The End");
}
public static int menu(Scanner user_input) {
System.out.println("\n-------");
System.out.println("Here are your choices: \n" + "1: Add Items " + "2: Remove Items " + "3: Sort Items " + "4: End");
System.out.println("-------");
int choice = user_input.nextInt();
return choice;
}
public static int[] addItems(int array[], Scanner user_input){
for(int i = 0; i < array.length; i ++){
System.out.print("Value #" + (i + 1) + ": ");
array[i] = user_input.nextInt();
}
return array;
}
public static int[] removeItems(int array[], Scanner user_input){
System.out.println("Number to be removed: ");
for(int i = 0; i < array.length; i ++){
System.out.println("Item removed: " + array[i]);
try {
array[i] = user_input.nextInt();
}
catch(Exception e){
array[array.length - 1] = 0;
}
}
return array;
}
public static int[] sort(int array[]){
System.out.println("Numbers in Ascending Order:");
for(int i = 0; i < array.length; i ++){
Arrays.sort(array);
System.out.print(" " + array[i]);
}
System.out.println("\nNumbers in Descending Order:");
for(int i = array.length - 1; i >= 0; i --){
System.out.print(" " + array[i]);
}
return array;
}
}
所以,現在我需要的是如何正確地刪除和刪除我的物品。我非常清楚,我的代碼是錯誤的,有些是正確的,大部分都混在一起。基本上這個:
- 如何刪除我的列表中的某些項目(例如值#1:50,值#2:90,...,值#10:1),我想刪除什麼是在前。值#7.
- 如何正確顯示列表中的當前/列表中的東西。
- 刪除我的列表,讓您回到選項1,即「添加項目」。
您可以改用ArrayList。這具有在特定位置添加和刪除單個元素的方法。另外你爲什麼要多次調用Arrays.sort?你只需要調用一次。 – SpiderPig
傳達是方法名稱只以小寫字母開頭。 – Elazar
@Elazar,除了無害的空白變化之外,不要更改他們的代碼。更改方法名稱的情況可能會導致更多的混淆,而不是值得的。 – jedwards