该程序提示用户输入列表中的数字,然后提示用户输入该列表中的实际数字。然后它决定列表中的数字是否已经排序。它工作得很好,但我希望程序立即提示用户输入列表和列表中的数字数量,而不是提示用户输入数字,然后提示用户输入用户之前输入的数字。对不起,太长了,下面是一个输出与我正在查找的内容的示例:
电流输出:
Enter a number for the length of the list: 5
Enter list:
1
Enter list:
3
Enter list:
2
Enter list:
4
Enter list:
5
The list is not sorted.
我想要追求的:
Enter a number for the length of the list: 5 1 3 2 4 5
The list is not sorted.
代码:
import java.util.Scanner;
public class Question7_19 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter a number for the length of the list: ");
int listLength = input.nextInt();
int[] number = new int[listLength];
for (int i = 0; i < number.length; i++) {
System.out.println("Enter list: ");
number[i] = input.nextInt();
}
if (isSorted(number)) {
System.out.println("The list is sorted.");
} else {
System.out.println("The list is not sorted.");
}
}
public static boolean isSorted(int[] list) {
for (int i = 0; i < list.length - 1; i++) {
if (list[i] > list[i + 1]) {
return false;
}
}
return true;
}
}
您可以使用StringTokenizer标记输入。这将允许在一行中输入数组编号。这还基于用户提供的令牌量来确定数组的大小。
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in);
System.out.print("Enter a numbers: ");
String input = scanner.nextLine();
StringTokenizer s = new StringTokenizer(input);
int[] number = new int[s.countTokens()];
int index = 0;
while(s.hasMoreTokens()){
String item = s.nextToken();
try{
number[index] = Integer.parseInt(item);
index++;
}catch(Exception e){
e.printStackTrace();
}
}
if (isSorted(number)) {
System.out.println("The list is sorted.");
} else {
System.out.println("The list is not sorted.");
}
scanner.close();
}
public static boolean isSorted(int[] list) {
for (int i = 0; i < list.length - 1; i++) {
if (list[i] > list[i + 1]) {
return false;
}
}
return true;
}
编辑:您还可以拆分字符串并遍历返回的数组元素。
String[] splitInput = input.split(" ");
int[] number = new int[splitInput.length];
for(int i = 0 ; i < splitInput.length ; i++){
String item = splitInput[i];
try{
number[i] = Integer.parseInt(item);
}catch(Exception e){
e.printStackTrace();
i--;
}
}
问题内容: 来自Oracle背景,Oracle的SQLPlus可以让您指示一个变量。如果未设置变量,则会提示您提供一个值。 我正在使用SQLCMD,并使用$([var_name])语法。在SSMS SQLCMD模式下,我得到: 发生致命的脚本错误。 未定义变量tbl_name。 …用于尝试运行: SQLCMD是否提供与SQLPlus相同的功能?如果是这样,我在做什么错? 问题答案: SQLCMD不
问题内容: 我正在编写一个提示输入的函数,然后根据输入返回不同的结果,然后再次要求输入。我已经得到它返回正确的值,但是我不确定如何使它再次提示输入。 这是该函数的实际代码: 在其中包含return的每一行中,它只是在调用先前定义的函数。的和是词典,前面所定义。 我只能使用内置函数。 问题答案: 我会用while循环来做。像这样:
问题内容: 在SQL Server Management Studio中是否可以要求用户提供输入并基于输入继续进行? 我有一个存储过程,它将一些数据插入表中。每当用户执行存储过程时,我都希望出现一条消息,询问他是否确定要执行该存储过程。 如果响应为“是”,则继续,如果“否”,则终止。 问题答案: 我建议编写一个小型应用程序来解决此问题。我不知道在运行sql时提示用户输入任何方法。IMO Sql M
问题内容: 我遇到一种情况(在硒测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全密码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了硒文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值
问题内容: 我有一种情况(在selenium测试期间),在这种情况下,用户将收到安全代码。然后,用户必须先输入安全代码,然后才能继续操作。 我不太确定如何获得用户输入的值。我浏览了selenium文档,并提出了这个建议。不幸的是,它并不是很有效。 有人可以指出我正确的方向吗? 问题答案: 似乎您必须先接受并关闭提示,然后才能存储和使用该值
编写一个程序,提示用户输入两个点 (x1,y1) 和 (x2, y2) 并显示它们之间的距离。计算距离的公式为:(x2-x1)^2 (y2-y1)^2 的平方根 这就是我所拥有的: 然而: 我不断得到以下错误: 请帮忙。谢谢