我正在尝试从类“ Cerc”创建对象数组,该类具有int类型的属性和string类型的属性

时间:2019-12-22 23:24:59

标签: java arrays object

import java.util.Scanner;

public class Test {
    public static void main(String[] args) {

        Scanner scan=new Scanner(System.in);

       //raza of type integer
       //nume of type String

    System.out.print("Dimension is = " );
    int n=scan.nextInt();
    Cerc c[]=new Cerc[n]; //array of objects



    //init array
        for (int i = 0; i <c.length ; i++) {
            c[i]=new Cerc();

            System.out.print("Raza=");
            c[i].raza=scan.nextInt();
            System.out.print("Nume=");
            c[i].nume=scan.nextLine();

        //Printing array
        for (int i = 0; i <n ; i++) {
            c[i].afisare(); 
        }
    }*main*
}*class*

有人可以解释我如何使用键盘上的用户输入来初始化具有不同类型参数的对象数组。

2 个答案:

答案 0 :(得分:0)

read ...()将在第一个空格字符或 button=(Button)findViewById(R.id.boutton); button2=(Button)findViewById(R.id.button2); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { MotionEvent me = MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis(), MotionEvent.ACTION_DOWN, 500, 935, 0); view.dispatchTouchEvent(me); } }); button2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Toast.makeText(MainActivity.this,"Clicled",Toast.LENGTH_LONG).show(); } }); }; 处停止。在只有一个int的行(扫描仪已读取)上调用readInt()之后,调用readLine()将返回行上的剩余内容(在本例中为空白)。

\n

答案 1 :(得分:-1)

您需要创建适当的构造函数和/或setter和getter。下面是一个示例:

import java.util.Scanner;

class Person {
    String name;
    int age;
    double salary;

    Person(String name, int age, double salary) {
        this.name = name;
        this.age = age;
        this.salary = salary;
    }

    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", salary=" + salary + "]";
    }
}

public class Test {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = 0;
        Person persons[] = null;
        System.out.print("Enter dimension: ");
        try {
            n = Integer.parseInt(scan.nextLine());
            persons = new Person[n]; // array of objects

            // init array
            for (int i = 0; i < persons.length; i++) {
                System.out.print("Enter name: ");
                String name = scan.nextLine();
                System.out.print("Enter age: ");
                int age = Integer.parseInt(scan.nextLine());
                System.out.print("Enter salary: ");
                double salary = Double.parseDouble(scan.nextLine());
                persons[i] = new Person(name, age, salary);
            }
        } catch (Exception e) {
            System.out.println("Invalid input");
        }
        // Printing array
        for (int i = 0; i < n; i++) {
            System.out.println(persons[i]);
        }
    }
}

示例运行:

Enter dimension: 2
Enter name: John
Enter age: 23
Enter salary: 1234
Enter name: Sam
Enter age: 34
Enter salary: 4321
Person [name=John, age=23, salary=1234.0]
Person [name=Sam, age=34, salary=4321.0]
相关问题