📄 sort.txt
字号:
public class Student{
int number;
String name;
int age;
//定义一个output方法,该方法输出学生数组的所有元素
static void output(Student s[]) {
for (int i=0;i<s.length;i++)
System.out.println(s[i]);
}
//定义toString方法。输出一个对象时,会自动调用对象的toString()方法。
public String toString( ) {
return "学号:"+number+", 姓名:"+name+", 年龄:"+age;
}
//重载Student类的构造函数
public Student(int number,int age,String name)
{ this.number=number;
this.age=age;
this.name=name;
}
public static void main(String args[]) {
Student s1 = new Student(3,18,"Lily");
Student s2 = new Student(1,21,"Suan");
Student s3 = new Student(33,20,"John");
Student s4 = new Student(13,20,"Lucy");
Student s5 = new Student(8,17,"Jack");
Student s[] = {s1,s2,s3,s4,s5};
System.out.println("班级学生名单如下:");
output(s); //第1次调用output方法输出数组
//将学生按照学号排序
for (int i=0;i<s.length-1;i++)
for (int j=1;j<s.length-i;j++)
{ Student st=new Student(0,0,"");
if(s[j-1].number>s[j].number)
{ st=s[j-1];
s[j-1]=s[j];
s[j]=st; }
}
System.out.println("按学号由小到大排序...");
output(s); //第2次调用output方法输出数组
//将所有学生年龄加1
for (int i=0;i<s.length;i++)
s[i].age+=1;
System.out.println("所有学生年龄加1后...");
output(s); //第3次调用output方法输出数组
// 统计大于20岁的学生个数
int count=0;
for (int i=0;i<s.length;i++)
if(s[i].age>20)
count++;
System.out.println("大于20岁人数是:" + count);
}
}
2.
class Node {
int data; //数据域
Node next; //链域,存放下一个结点的引用
}
public class Link {
Node header ;
/* 构建含n个结点的链表。链表的头用header指示 */
public Link(int n) {
Node p,q; // p为链表中当前的最后一个结点,q为要新加的结点
header=new Node(); //创建首结点
header.data=(int)(Math.random()*100); //给首结点的data域赋值
p=header;
for(int k=1;k<=n-1;k++){
//创建除了首结点之外的其他结点
q=new Node();
p.next=q;
q.data=(int)(Math.random()*100);
p=q;
}
}
/* 输出链表的所有元素的数据 */
void outputLink()
{ Node p=new Node();
p=header;
//outputLink()的实现代码
while(p!=null)
{ System.out.print(p.data+"-->");
p=p.next;
}
System.out.println();
}
public static void main(String a[]) {
Link x=new Link(10);//创建含10个元素的链表
x.outputLink ();//输出链表
//创建一个数据为50的新结点,放到链表的头部
Node y=new Node();
y.data=50;
y.next=x.header;
x.header=y;
x.outputLink(); //输出链表
//至链表的尾部,在尾部增加一个data值为50的新结点
Node z=x.header;
while(y!=null)
{ z=y;
y=y.next; }
y=new Node();
y.data=50;
z.next=y;
x.outputLink(); //输出链表
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -