4 回答

TA貢獻1815條經驗 獲得超6個贊
如果你想要 Java 8 版本,這里是代碼
Scanner s = new Scanner(System.in);
String text = s.nextLine();
String[] entries = text.split("\\s");
List<Integer> integers = Arrays.stream(entries)
.map(Integer::valueOf)
.collect(Collectors.toList());
Collections.reverse(integers);
integers.forEach(integer -> System.out.print(String.format("%d ", integer)));
\\s表示“空白”,我建議你Scanner在最后關閉。

TA貢獻1812條經驗 獲得超5個贊
試試下面的代碼:
public static void main(String[] args)
{
Scanner s = new Scanner(System.in);
String text = s.nextLine();
String[] entries = text.split(" ");
for(int i = entries.length-1; i >= 0; i--)
{
System.out.print(Integer.parseInt(entries[i])+ " ");
}
}

TA貢獻1875條經驗 獲得超3個贊
如果要以相反的順序存儲數字:
for(int i = 0; i < entries.length; i++)
{
nums[i] = Integer.parseInt(entries[entries.length-i-1]);
}
如果您只想以相反的順序顯示數字(它們在列表中將保持相同的順序:
for(int i = entries.length-1; i >= 0; i--)
{
System.out.println(nums[i]);
}

TA貢獻1797條經驗 獲得超6個贊
您可以entries向后循環遍歷數組。這將涉及從負 1int i的長度開始entries(因為這是您數組中的最后一個索引 - 即您的最后一個數字)。它還需要您繼續循環 while i >= 0。i最后,您需要減少變量,而不是增加變量。這樣,您的計數器i將從循環結束到數組的開始(例如:如果輸入“1 2 3”,i將從索引開始:2、1、0)
請參見下面的示例:
public static void main(String[] args) {
// TODO code application logic here
Scanner s = new Scanner(System.in);
String text = s.nextLine();
String[] entries = text.split(" ");
int[] nums = new int[entries.length];
for(int i = 0; i < entries.length; i++) {
nums[i] = Integer.parseInt(entries[i]);
}
for(int i = entries.length-1; i >= 0; i--) {
System.out.println(nums[i]);
}
}
添加回答
舉報