package arraysofobjects;
import java.util.Scanner;
public class arraysofobjects {
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
students[] stu=new students[4];
String name;
int grade;
for(int i=0;i<stu.length;i++)
{
name=input.nextLine();
grade=input.nextInt();
stu[i]=new students(name,grade);
}
for(int i=0;i<stu.length;i++)
{
System.out.printf("name:%s\tgrades:%d\n",stu[i].name(),stu[i].grades());
}
}
}
package arraysofobjects;
public class students {
private String _name;
private int _grades;
public students(String name,int grades)
{
this._name=name;
this._grades=grades;
}
public String name()
{
return this._name;
}
public int grades()
{
return this._grades;
}
}
输入两行就开始报错了
name=input.nextLine();改为name=input.next();
把第一行赋值name=nextLine修改成nextString
把报文贴出来,一下就懂了
JAVA中对输出到屏幕的语法做了优化
比如,我要输出一个值,我可以写成
inti;
i=10;
System.out.println("i的值为"+i);
不再使用%d,可以直接将变量写在双引号外面
输入字符串是掉Scanner的next()
你这个输出就是c的输出,java中不用这么麻烦吧
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。