【发布时间】:2021-01-31 07:53:27
【问题描述】:
我基本上想从我的 12 个整数数组中删除最后一个逗号“,”。我的输出类似于{23, 45, 54, 56, 67, 87, 89, 90, 76, 89, 87, 23, } ,而我想删除最后一个逗号和它在逗号之后创建的空格。
示例输出:
{23, 45, 54, 56, 67, 87, 89, 90, 76, 89, 87, 23}
我的任务基本上是使用冒泡排序方法按升序对整数进行排序。我的输出基本上显示了每个阶段的排序和最终排序的数组。我想从每个阶段的排序、最终排序的数组和随机生成的数组中删除最后一个逗号和它创建的空间。我基本上在我的代码中提供了 cmets,这将帮助你找到每一件事。
请不要让这个过于复杂
代码:
// Create a class and method
class Main {
public static void main(String[] args) {
// Clear screen
System.out.print("\033[H\033[2J");
System.out.flush();
// Initialize a int array with the limit of 12
int[] numbers = new int[12];
// Create a statement
System.out.println("Random Generated Array:");
System.out.print("{");
// Start a for loop to print random numbers
for (int x = 0; x < numbers.length; x++) {
numbers[x] = (int) (Math.random() * 101); // So that it prints random numbers from 0 to 100 (inclusive)
// Print out the 12 random numbers
System.out.print(numbers[x] + ", ");
}
System.out.print("}");
// Create space
System.out.println();
System.out.println();
// Create a statement
System.out.println("Sorting At Each Stage:");
// Start looping numbers until 12
for (int i = 0; i < numbers.length; i++) {
// Start looping numbers and comparing it to the "i" values
for (int j = i; j < numbers.length; j++) {
if (numbers[j] < numbers[i]) {
// Swap the positions of the numbers with the variable "temp"
int temp = numbers[j];
numbers[j] = numbers[i];
numbers[i] = temp;
}
// Create space
System.out.println();
// Use a for loop to print numbers at each stage of sorting
System.out.print("{");
for (int k = 0; k < numbers.length; k++) {
System.out.print(numbers[k] + ", ");
}
System.out.print("}");
System.out.println();
}
}
// Create space
System.out.println();
System.out.println("\nBubble Sorted Array:");
System.out.print("{");
// Use a for loop to print the final sorted numbers in ascending order
for (int a = 0; a < numbers.length; a++) {
System.out.print(numbers[a] + ", ");
}
System.out.print("}");
// Create space
System.out.println();
System.out.println();
}
}
【问题讨论】:
-
使用
if语句查看索引是否为== numbers.length - 1。如果是这样,请不要打印逗号,因为这是数组中的最后一个元素。 -
@ggorlen - 如果只有一个元素怎么办?它仍将打印为
{<<num>>, }。还有一点需要考虑????。 -
不,事实并非如此。如果只有一个元素,则
i == numbers.length - 1为真,逗号不会打印。
标签: java arrays sorting bubble-sort removing-whitespace