我已经改变了问题,我面临的问题是返回,我似乎无法将名称和电话从addcontact方法正确返回到main。

我需要将名称和电话返回主方法,并在必要时进行更新。 object []似乎是一个不错的选择,但我似乎无法使其正常工作。


package asstask3;

import java.util.*;

public class AssignmentTask3
{
    static Scanner input = new Scanner( System.in );

    public Object[] addcontact(String[] name, String[] phone, int count)
    {
        if ( count == 30 )
        {
            System.out.println( "No more contacts can be added" );
            return null;
        }
        else
        {
            System.out.println( "Enter the name:" );
            name[ count ] = input.next();

            System.out.println( "Enter the phone:" );
            phone[ count ] = input.next();
            count++;
        }
        return new Object[]{name, phone};
    }

    public boolean updatecontact(String[] name, String[] phone, String upname, int count)
    {
        for ( int i = 0; i < count; i++ )
        {
            if ( name[ i ].equals( upname ) )
            {
                System.out.println( "Enter to update phone:" );
                phone[ i ] = input.next();
                return true;
            }
        }
        return false;
    }

    public void displaymenu()
    {
        System.out.println( "1. Add New Contact" );
        System.out.println( "2. Update Existing Contact" );
        System.out.println( "0. Exit" );
    }

    public static void main(String []args)throws Exception
    {
        AssignmentTask3 Astask = new AssignmentTask3();
        String name[] = new String[ 30 ];
        String phone[] = new String[ 30 ];

        int count = 1;

        do
        {
            Astask.displaymenu();
            int x = input.nextInt();
            if ( x == 1 )
            {
                Object[] add = Astask.addcontact( name, phone, count );
                String ss = add[1].toString();

                System.out.println( "Name" +name + "Phone"+ phone + "Con" + ss );

            }
            if ( x == 2 )
            {
                System.out.println( "Enter name to update:" );
                String upname = input.next();
                Astask.updatecontact( name, phone, upname, count );
            }
            if ( x == 0 )
            {
                System.exit( 0 );
            }
        } while ( true );

    }
}

名称[Ljava.lang.String; @ 5010be6Phone [Ljava.lang.String; @ 685f4c2eCon [Ljava.lang.String; @ 5010be6

这是执行addcontact方法后从print语句获得的信息。

  ask by Javeria Ejaz translate from so

本文未有回复,本站智能推荐:

5回复

从同一方法返回两个数组?

我正在尝试编写一个程序,该程序将读取城市A和城市B中5天的高温。我必须为城市创建一个方法,该方法将吸收所有10个值并将它们返回给主要方法。 我最初只有一种方法,将[0]-[4]视为cityA,将[5]-[9]视为cityB,但是我的教授说这不是他想要的(即使答案在技术上是正确的)。 很难读
2回复

将单个数组返回多维数组

全面披露; 我需要知道这一点。 我想从方法将单个数组返回到多维数组。 我通过将以下代码返回到另一个一维数组,然后使用for循环来传递值,从而避免了以下代码的问题。 是否有更常规的方式将array3返回到不具有循环1的array1? 遵循以下原则
5回复

在方法中返回数组

我有一个方法将返回String [],具体取决于先前的用户输入,该输入将确定参数是“ INTERNATIONAL”还是“ DOMESTIC”。 无论如何,两个输入都应导致创建两个不同的String []。 但是,当我尝试编译时,出现“缺少返回语句”错误消息。 我怎样才能解决这个问题?
5回复

java-从方法返回数组

我创建了这个片段: 我刚刚创建了一个类,数据库中的数据被收集在一个数组中。 现在我只想从这个方法返回数组。 但我得到的是: 有人可以帮帮我吗? 问候! 更新: 我改变了片段: 当我编译时: 谁知道这个? 问候!
2回复

从方法创建和返回数组

我目前有一种方法可以检查3x3网格中中心项目周围的内容,如果8个相邻位置中的内容包含我要检查的内容,我想在长度为7的数组上将该正方形标记为1。 为此,我需要在我的方法中创建并返回一个数组,这有可能吗?
3回复

获取四个双精度数并返回一个双精度数组的方法的签名是什么?[复制]

这个问题在这里已经有了答案: 如何在 Java 中初始化数组? (10 个回答) 4年前关闭。 我是一个该死的 Java 初学者,需要一
4回复

比较两个数组。返回值错误(1)

我制作了一种比较两个数组的数字,然后返回多少个数字相等的方法,但是无论多少个数字相等,该方法每次都会返回值1。 (两个数组的长度相同)。
1回复

返回字符串的方法数组

我正在创建一种数据测试程序,其中一个特定的部分给我带来了很大的麻烦。 在我的main方法类中有一个部分,我需要将一个数据字符串作为方法中的参数发送到我的方法类(让我们称之为ValidatorClass),并且想法该方法将返回任何验证错误或者如果没有简单的空字符串。 这样就可以了,除了我在浏