Jpanel p1=new Jpanel(布局类);
c.add(p1);
Container c=getContentPane();//创建容器
JTxtArea ta=new JTextArea(20,50);//创建文本区域组件
JScrollPane sp=new JScrollPane(ta);//创建面版对象
c.add(sp);//添加到容器里面
String arr[]= {“3”,“2”,“1”};
JLabel jl=new JLabel(“asdsss”);
JComboBox jc=new JComboBox<>();
ComboBoxModel cm=new DefaultComboBoxModel<>(arr);
jc.setModel(cm);
两个可以分别得到列表选中的索引和值
System.out.println(“num:”+jc.getSelectedIndex());
System.out.println(“内容”+jc.getSelectedItem());
列表框组件
常用构造方法
public void JList();
public void JList(Object[]listData);
public void JList(Vector listData);
public void JList(ListModel dataModel);
可以使用数组初始化列表框
也可以使用vector类型数据初始化列表框
.
Vector contents =new Vector();
JList ji=new JList(contents);
contents.add(“1”);
contents.add(“2”);
contents.add(“3”);
也可以使用模型
String arr[]= {“3”,“2”,“1”,“sd”,“asj”,“shxb”,“sbxj”,“agsz”,“shxn”};
JListjc=new JList<>();
DefaultListModel mo=new DefaultListModel<>();
for(String tmp:arr) {//向列表载入数据
mo.addElement(tmp);
}
好处是可以再添加其他的
可以设置选择的样子
jc.setSelectionModel(ListSelectionModel.SINGLE_SELECTION);只能单选
SINGLE_INTERVAL_SELECTION;只能连着选
MULTIPE_INTERVAL_SELECTION;随便选
用事件监听器得到选中的内容
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {//获得选中的元素
java.util.List<String> value=jc.getSelectedValuesList();
for(String tmp:value) {
System.out.println(tmp);
}
}
});
事件名称 | 事件源 | 监听接口 | 添加或者删除相应类型监听器的方法 |
---|---|---|---|
ActionEvent | JButton,JList,JTextField等 | ActionListener | addActionListener(),removeActionListioner() |
焦点事件监听器
事件名称 | 事件源 | 监听接口 | 添加或者删除相应类型监听器的方法 |
---|---|---|---|
FocusEvent | Component以及派生类 | FocusListener | addFocusListener(),removeFocusListioner() |
在添加监听器的时候,要实现FocusListener接口,这个接口中定义了两个方法,分别为focusLost()和focusGained()方法,前者是组件失去焦点的时候调用的,后者是得到焦点的时候。
setPriority()方法,参数为1-10,不然会异常,有三个常数
t.MIN_PRIORITY;表示1
t.MAX_PRIORITY;表示10
t.NORM_PRIORITY;表示5
1.要想取出集合中的数据,要使用迭代器
package com.lzw;
import java.util.*;
public class Muster { // 创建类Muster
public static void main(String args[]) {
Collection<String> list = new ArrayList<>(); // 实例化集合类对象
list.add("a"); // 向集合添加数据
list.add("b");
list.add("c");
Iterator<String> it = list.iterator(); // 创建迭代器
while (it.hasNext()) { // 判断是否有下一个元素
String str = (String) it.next(); // 获取集合中元素
System.out.println(str);
}
}
}
package lianxi;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.TreeSet;
import javax.swing.*;
import javax.swing.*;
public class get implements Comparable {
String name;
int id;
public get(String name,int id) {
this.id=id;
this.name=name;
}
public String getstr() {
return name;
}
public int getid() {
return id;
}
public void setid(int id) {
this.id=id;
}
public int compareTo(Object o) {
get upstu = (get) o;
int result = id > upstu.id ? 1 : (id == upstu.id ? 0 : -1);
return result;
}
public static void main(String[] args) {
get stu1=new get("一号",1);
get stu2=new get("二号",2);
get stu3=new get("三号",3);
get stu4=new get("四号",4);
get stu5=new get("五号",5);
TreeSet<get> t =new TreeSet<get>();
t.add(stu1);
t.add(stu2);
t.add(stu3);
t.add(stu4);
t.add(stu5);
Iterator<get> it=t.iterator();
stu2.setid(8);
while(it.hasNext()) {
get stu=it.next();
System.out.println(stu.getid()+" "+stu.getstr());
}
}
}
TreeSet类增加的方法
方法 | 功能描述 |
---|---|
first() | 返回set中当前的第一个元素 |
last() | 返回set中当前的最后一个元素 |
comparator() | 返回对这个set中的元素进行排序的比较器,要是自然排序就返回null |
headSet(E toElement) | 返回一个新的集合,从Element之前的,一般是包括前面不包括后面 |
subSet(E fromElement,E fromElement) | 返回一个新的集合,从e到e,包括前不包括后 |
tailSet(E fromElement) | 返回一个新的集合,从element到之后,包括他 |
package lianxi;
import java.awt.*;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.TreeSet;
import javax.swing.*;
import javax.swing.*;
public class get {
String name;
int id;
public get(String name, int id) {
super();
this.name = name;
this.id = id;
}
public String toString() {
return "get [name=" + name + ", id=" + id + "]";
}
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + id;
return result;
}
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
get other = (get) obj;
if (id != other.id)
return false;
return true;
}
}
主方法所在类
package lianxi;
import java.awt.*;
import java.awt.event.*;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.*;
public class myexprtion {
public static void main(String[] args) {
Set set=new HashSet();
get g1=new get("小明",1);
get g2=new get("小红",2);
get g3=new get("小蓝",3);
get g4=new get("小紫",4);
set.add(g1);
set.add(g2);
set.add(g3);
set.add(g4);
System.out.println(set.size());
Iterator it=set.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
}
}
方法 | 功能描述 |
---|---|
put(K key,V value) | 向集合中添加指定的key与value的映射关系 |
containsKey(Object key) | 如果这个集合包含指定key映射关系就返回true |
containsValue(Object value) | 如果这个集合包含这个指定value的映射关系就返回true |
get(Object key) | 如果存在指定key对象,就返回这个对象的对应值,不然就返回null |
keySet() | 返回集合中的所有key对象形成的set集合 |
values() | 返回这个集合中所有值对象形成的collections集合 |
public static void main(String[] args) {
Map<String, String> map=new HashMap<>();//新建map接口
map.put("1","baiyun");
map.put("2","zhnehaokan");
map.put("3","sjd");
Set<String> set=map.keySet();
Iterator<String> it=set.iterator();
while(it.hasNext()) {
System.out.println(it.next());
}
}
方法 | 返回值 | 说明 |
---|---|---|
getName() | String | 获取文件的名称 |
canRead() | boolean | 判断文件是否可读 |
canWrite() | boolean | 判断文件是否可写入 |
exits() | boolean | 判断文件是否存在 |
length() | long | 以字节为单位获取文件的长度 |
getAbsolutePath() | String | 获取文件的绝对路径 |
getParent() | String | 获取文件的父路径 |
isFile() | boolean | 判断文件是否存在 |
isDirectory() | boolean | 判断文件是否为一个目录 |
isHidden() | boolean | 判断文件是否为隐藏文件 |
lastModified() | long | 获取文件的最后修改时间 |
package lianxi;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.*;
public class get {
public static void main(String[] args) {
File f=new File("word.txt");
try {
FileOutputStream out=new FileOutputStream(f,true);//是否是追加的写入
String str="你知道你属猪嘛"+'\n';
byte b[]=str.getBytes();
out.write(b);//写进去
out.close();//关闭文件
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
FileInputStream in=new FileInputStream(f);
byte b2[]=new byte[1024];
int len=in.read(b2);//读取文件顺便获取读取的字节数
System.out.println(new String(b2,0,len));//设定转换的范围
in.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
import java.io.*;
public class Example_01 { // 创建类
public static void main(String[] args) { // 主方法
try {
// 创建FileOutputStream对象
FileOutputStream fs = new FileOutputStream("word.txt");
// 创建DataOutputStream对象
DataOutputStream ds = new DataOutputStream(fs);
ds.writeUTF("使用writeUFT()方法写入数据;"); // 写入磁盘文件数据
//ds.writeChars("使用writeChars()方法写入数据;");
//ds.writeBytes("使用writeBytes()方法写入数据.");
ds.close(); // 将流关闭
// 创建FileInputStream对象
FileInputStream fis = new FileInputStream("word.txt");
// 创建DataInputStream对象
DataInputStream dis = new DataInputStream(fis);
System.out.print(dis.readUTF()); // 将文件数据输出
} catch (Exception e) {
e.printStackTrace(); // 输出异常信息
}
}
}