使用椭圆或省略号出错

詹姆士

我正在创建一个简单的程序,该程序将获取姓名,年龄和喜欢的号码。问题是,当用户选择输入1个以上的收藏夹号码时,会出现此异常。

例外

请帮助我解决在测试类-> favnum2方法中仍然使用椭圆的问题。*

测试班

import java.util.Scanner;
public class testing{
public static Scanner input;


public static void main(String[] args){

    boolean choicerepeat=true;
    int favnumoftimes;

    while(choicerepeat==true){
        input = new Scanner(System.in);
        testing2 obj1 = new testing2();
        String name="";
        int age=0;
        favnumoftimes=0;
        double favnum=0, favnumarr[]=new double[999];
        boolean choice1;

        System.out.print("What is your name? ");
        name = input.nextLine();
        System.out.print("What is your age? ");
        age = input.nextInt();

        obj1.message1(name);
        obj1.message2(age);

        System.out.print(name+" do you only have one favorite number? (If yes type 'true' else 'false' - NOTE: lowercase only) ");
        choice1 = input.nextBoolean();

        if(choice1==true)
            favnum1();
        else{
            System.out.println("How many favorite numbers do you have "+name+"? ");
            favnumoftimes = input.nextInt();
            for(int a=0;a<favnumoftimes;a++){
                System.out.print("Enter favorite number "+ (a+1) +": ");
                favnumarr[a]=input.nextDouble();
            }

            for(int a=0;a<favnumarr.length;a++){
                favnum2(favnumoftimes, favnumarr[a]);
            }
        }

        System.out.println();
        System.out.println("Do you want to restart the program? (true(Yes) else false(No)) ");
        choicerepeat = input.nextBoolean();

    }
}

public static void favnum1(){
    System.out.print("Enter favorite number: ");
    double favnumholder1 = input.nextDouble();
    System.out.println("Your favorite number is "+favnumholder1+" ." );
}

public static double favnum2(int favnumoftimesholder,double...favtemphold2){
    System.out.print("Your favorite numbers are ");
    for(int a=0;a<=favnumoftimesholder;a++){
        System.out.print(favtemphold2[a]+", ");
    }
    return 0;
}
}

testing2类

public class testing2{
public static String message1(String nameholder){
    for(int a=0;a<nameholder.length();a++){
        char strholder = nameholder.charAt(a);
        if(Character.isDigit(a)){
            System.out.println("Names don't have numbers... ");
            break;
        }
        else continue;
    }
    System.out.println("\nHi "+nameholder+"! Welcome to my simple program. ");
    return nameholder;
}

public static int message2(int ageholder){
    System.out.println("Your age is "+ageholder+" years old? Oh my goodness. ");
    System.out.println();
    return ageholder;
}
}
汤玛士

问题在于varargs创建新数组,其长度等于传递的参数数量。这样double...favtemphold2将创建一个新数组,favtemphold2并且由于您仅传递了1个元素(favnum2(favnumoftimes, favnumarr[a]);),因此该数组的长度为1。

您可能想要传递更多的元素或整个数组,即favnum2(favnumoftimes, favnumarr);由于double...基本上是语法糖,因为double[]它们相等,因此为双vararg传递双精度数组将起作用。

但是,警告您将来要使用varargs:请谨慎使用,Object...因为数组也是对象。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R在call()中使用省略号...

来自分类Dev

如何使用文字溢出:省略号?

来自分类Dev

在表格中使用省略号

来自分类Dev

处理省略号

来自分类Dev

结构省略号

来自分类Dev

省略项中的省略号省略

来自分类Dev

Flexbox和文本溢出:省略号混合使用吗?

来自分类Dev

如何在嵌套函数中正确使用省略号

来自分类Dev

如何使用CSS实现单行省略号

来自分类Dev

使用jQuery仅获取省略号文本

来自分类Dev

cpp:使用省略号捕获异常并查看信息

来自分类Dev

使用jQuery检测CSS文本超低省略号

来自分类Dev

使函数对help()函数中的参数使用省略号

来自分类Dev

如何在Bootstrap响应表中使用省略号

来自分类Dev

Makefile.am中使用的省略号(...)是什么?

来自分类Dev

在省略号前使用“ not”运算符

来自分类Dev

cpp:使用省略号捕获异常并查看信息

来自分类Dev

Flexbox和文本溢出:省略号混合使用吗?

来自分类Dev

将省略号 (...) 与 NSStringDrawingTruncatesLastVisibleLine 一起使用

来自分类Dev

在 Java 中使用省略号时如何传递数组?

来自分类Dev

Reduce()和...(省略号)

来自分类Dev

JavaScript链接省略号

来自分类Dev

简单的JavaScript省略号(...)

来自分类Dev

句子中间省略号

来自分类Dev

这个语法“ ...”(省略号)是什么?

来自分类Dev

Rails:用省略号自动链接?

来自分类Dev

Safari以错误的字体省略号

来自分类Dev

截断省略号,不带宽度

来自分类Dev

如何为TD设置省略号