ArrayList list = new ArrayList();
Iterator it = list.iterator();
TreeSet<Student> ts = new TreeSet<Student>();
for (Student s : ts2) {
System.out.println(s.getName() + "---" + s.getGrade());
}
TreeSet<Student> stu=new TreeSet<>();//定义Student类型的TreeSet
Student s4=new Graduates(2025050316,"赵六",59);
stu.add(s1);//往TreeSet里面添加Graduates类型对象
//文件存储操作
File file=new File("out.txt");//定义文件类型对象
try {//IO操作的异常处理
file.createNewFile();//利用file创造新的系统文件
FileOutputStream out=new FileOutputStream(file);//创建输出流
OutputStreamWriter writer=new OutputStreamWriter(out);//将字符流转换成字节流
BufferedWriter writer1=new BufferedWriter(writer);//将文本写入字符输出流,缓冲各个字符,从而提供单个字符、数组和字符串的高效写入
Iterator<Student> it=stu.iterator();//使用TreeSet定义迭代器对象
while(it.hasNext()){
Student temp=it.next();//不断定义Student对象顺序获取TreeSet
String str=temp.id+" "+temp.name+" "+temp.results;//取出对象中的属性组成字符串
writer1.write(str);//往文件对象中写入字符串
System.out.println(str);
}
writer1.close();
}catch (IOException e){
e.printStackTrace();
}
1、main方法的方法头记住:
public static void main(String args[])
2、任何能运行Java字节码文件的软件都可以看成Java的虚拟机
3、Java是一门面向对象的语言,Java具有自动垃圾回收的机制,Java可以跨平台,支持多线程
4、集合类都位于java.util包 中
5、方法重载是指两个或者两个以上的方法取相同的方法名,但形 参的个数或者类型不同
6、static int arr[ ]=new int[10]; 这段代码的结果是产生了一个容量为10的数组,里面都是初始化的零。
7、JDK中用于执行java字节码文件的是java.exe
8、在java中一个类不能同时继承一个类和实现一个接口
9、程序设计的错误可以分为三类:语法错误、运行时错误和逻辑错误
10、字符串不是值类型数据,所以在比较两个字符串的时候,应该使用equal方法
11、抽象类中可以包含普通方法,但是接口中只能包含抽象方法
12、向上转换是指将子类赋值给父类类型的变量,是不安全的
13、Throwable类有两个子类:Exception类和Error类
14、要想让一个类继承另一个类,可以使用extends关键字
15、JButton是容器组件
16、在类的继承关系中,需要遵循单一继承原则
17、java.awt包提供内容基本的java程序的GUI设计工具,包含控件、容器和布局管理器
18、GridLayout布局管理器不可以设置组件的大小,放置在布局管理器中的组件将自动占据网格的整个区域,他的缺点是:忽略组件的最佳大小,所有组件的宽高都相同
19、byte型的变量在运算期间类型会自动提升为int类型
20、Thread类join()方法的作用:使得线程进入阻塞状态
21、属于OutputStream类的方法有:write(byte)、flush()、close()。
22、一个java程序不一定需要main方法,需要独立运行的程序才要有main方法
23、TreeMap中所有的键时按照某种顺序排列,确定键的排列顺序的依据是自然排序(Comparable)、比较器(Conmparator)
24、在ArrayList类的方法中,从List接口中继承而来的是toArray\set\add
25、RUntime类用于表示虚拟机运行时的状态,它用于封装JVM虚拟机进程。每次使用java命令启动虚拟机都会对应一个Runtime实例,并且只有一个实例,此类采取单例模式,通过getRuntime()方法获取实例
26、Java的特性::简单性、跨平台、面向对象、支持多线程
27、针对文件的读取,JDK专门提供了FileInputStream类
28、Swing常见的按钮组件由JButton、JCheckBox、JRadioButton
29、在向borderlayout的布局管理器添加组件时,如果不指定添加到哪一个区域,默认添加到CENTER
30、JDK提供的标准类包有两个,分别是dt.jar和tools.jar
31、java.io包中可以用于从文件中直接读取字符的是FileRender类
32、在java线程中,线程整个生命周期可以分为五个阶段,分别是:创建状态、就绪状态、运行状态、阻塞状态和死亡状态
33、classpath环境变量的作用:是一个javac编译器专用的环境变量,作用是告诉java执行环境
34、Java的字符类型采用的是Unicode编码方案,每个Unicode码占用16个比特位
35、Java数组中可以放入任何类型的数据
36、String类和StringBuffer类都被定义为最终类,不能有子类
37、建立Java开发环境,需要设置环境变量path和classpath
38、数组对象的长度在数组对象创建之后,就不能改变,数组元素的下标总是从0开始
39、Object c [ ] = new Object[5]; c数组里面放的是null
40、有几个类就产生几个字节码文件,扩展名:.class
41、Java标识符由字母、$、下划线和竖直组成,其中数字不能放在开头
42、两种形式的多态:编译时多态和运行时多态