我试图从我的类中创建一个对象数组;Cerc“;,它的属性类型为int,属性类型为string import java.util.Scanner; 公开课考试{ 公共静态void main(字符串[]args){ 扫描仪扫描=新扫描仪(System.in); //整型raza //字符串类型的nume 系统输出打印(“维度为=”); int n=scan.nextInt(); Cerc[]=新的Cerc[n];//对象数组 //初始化数组 对于(int i=0;i

我试图从我的类中创建一个对象数组;Cerc“;,它的属性类型为int,属性类型为string import java.util.Scanner; 公开课考试{ 公共静态void main(字符串[]args){ 扫描仪扫描=新扫描仪(System.in); //整型raza //字符串类型的nume 系统输出打印(“维度为=”); int n=scan.nextInt(); Cerc[]=新的Cerc[n];//对象数组 //初始化数组 对于(int i=0;i,java,arrays,object,Java,Arrays,Object,,您需要创建适当的构造函数和/或setter和getter。下面是一个示例: 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.o

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

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*
read…()将在第一个空格字符处或在
\n
处停止。在只有一个int的行(扫描仪已经读取)上调用readInt()后,调用readLine()将返回该行上剩余的内容(在本例中仅为空格)

import java.util.Scanner;
公开课考试{
公共静态void main(字符串[]args){
扫描仪扫描=新扫描仪(System.in);
//整型raza
//字符串类型的nume
系统输出打印(“维度为=”);
//replaceAll(“[^\\d]+”,“”)删除所有非数字字符
int n=Integer.parseInt(scan.nextLine().replaceAll(“[^\\d]+”,”);
//对象数组的声明如下:
Cerc[]c=新的Cerc[n];//对象数组
//初始化数组

对于(int i=0;我可以更好地描述这个问题吗?可能是这样:而且,在第一次
for
之后,您似乎缺少了一个
。扫描仪无法读取该对象的int和字符串,这是我认为的问题。也许您可以帮助我了解更多
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]