如何使用Scanner在Main中输入两个数字,并使用方法(升序java)使其工作?
我正在尝试制作一个程序,它将在两个输入数字之间按升序打印数字。我让它作为一个方法工作,我可以在Main中调用该方法,但我真正想做的是在Main中输入两个数字,而不是在方法中 比如说: System.out.println(“升序中的两个数字”) (在控制台中输入两个数字) 然后在此之后,调用将在所选的Main数之间按升序打印的方法 我对这一点还不熟悉,我尝试过好几种方法,但我似乎不知道该怎么办。非常感谢您的帮助 这就是代码现在的样子如何使用Scanner在Main中输入两个数字,并使用方法(升序java)使其工作?,java,for-loop,methods,java.util.scanner,Java,For Loop,Methods,Java.util.scanner,我正在尝试制作一个程序,它将在两个输入数字之间按升序打印数字。我让它作为一个方法工作,我可以在Main中调用该方法,但我真正想做的是在Main中输入两个数字,而不是在方法中 比如说: System.out.println(“升序中的两个数字”) (在控制台中输入两个数字) 然后在此之后,调用将在所选的Main数之间按升序打印的方法 我对这一点还不熟悉,我尝试过好几种方法,但我似乎不知道该怎么办。非常感谢您的帮助 这就是代码现在的样子 import java.util.Scanner; publ
import java.util.Scanner;
public class AscendingOrder {
public static void main(String[] args) {
// calling method
int ascending1 = ascending();
}
public static int ascending() {
int min;
int max;
int total = 0;
Scanner sc = new Scanner(System.in);
System.out.println("Two numbers in ascending order");
min = sc.nextInt();
max = sc.nextInt();
for (int i = min; i < max + 1; i++) {
System.out.print(i + " ");
total += i;
}
return total;
}
}
import java.util.Scanner;
公共类升序{
公共静态void main(字符串[]args){
//调用方法
int递增1=递增();
}
公共静态int升序(){
int-min;
int max;
int-total=0;
扫描仪sc=新的扫描仪(System.in);
System.out.println(“升序中的两个数字”);
最小值=sc.nextInt();
max=sc.nextInt();
对于(int i=min;i
将两个输入作为参数传递给方法,类似于:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Two numbers in ascending order");
int min = sc.nextInt();
int max = sc.nextInt();
int ascending1 = ascending(min, max);
System.out.println(ascending1);
}
现在:
public static int ascending(int min, int max) {
int total = 0;
for (int i = min; i < max + 1; i++) {
System.out.print(i + " ");
total += i;
}
return total;
}
公共静态整数递增(整数最小值,整数最大值){
int-total=0;
对于(int i=min;i
请注意,
ascending()
的定义现在包含两个int
类型的参数。值从主方法传递到方法。您可以在main
方法中输入数字,然后将它们传递到另一个方法:
public class AscendingOrder {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Two numbers in ascending order");
int min = sc.nextInt();
int max = sc.nextInt();
int ascending1 = ascending(min, max);
}
public static int ascending(int min, int max) {
int total = 0;
for (int i = min; i < max + 1; i++) {
System.out.print(i + " ");
total += i;
}
return total;
}
}
公共类递增顺序{
公共静态void main(字符串[]args){
扫描仪sc=新的扫描仪(System.in);
System.out.println(“升序中的两个数字”);
int min=sc.nextInt();
int max=sc.nextInt();
int递增1=递增(最小值、最大值);
}
公共静态整数递增(整数最小值,整数最大值){
int-total=0;
对于(int i=min;i
您可以读取命令行参数,或者将扫描器放在主函数中并传递参数
import java.util.Scanner;
public class AscendingOrder {
public static void main(String[] args) {
System.out.println("Entered first number is: "+args[0]);
System.out.println("Entered Secomd number is: "+args[1]);
int ascending1 = ascending(Integer.parseInt(args[0]),Integer.parseInt(args[1]));
}
public static int ascending(int min,int max) {
int total = 0;
for (int i = min; i < max + 1; i++) {
System.out.print(i + " ");
total += i;
}
return total;
}
}
import java.util.Scanner;
公共类升序{
公共静态void main(字符串[]args){
System.out.println(“输入的第一个数字是:“+args[0]);
System.out.println(“输入的Secomd编号为:“+args[1]);
int ascending1=升序(Integer.parseInt(args[0]),Integer.parseInt(args[1]);
}
公共静态整数递增(整数最小值,整数最大值){
int-total=0;
对于(int i=min;i
您可以在main方法中获取数字,并在main方法本身中对其进行排序。Java8使流变得非常容易
public static void main( String[] args ) throws Exception {
Framework.startup( );
Scanner sc = new Scanner( System.in );
System.out.println( "Two numbers in ascending order" );
int num1= sc.nextInt( );
int num2= sc.nextInt( );
Arrays.asList( num1, num2).stream( ).sorted( ).forEach( System.out::println );
}
可能
IntStream.range(sc.nextInt(),sc.nextInt()).forEach(System.out::println)
在这种情况下会更好。这将避免排序的需要。