首页 > 代码库 > JavaSE中主要的类与方法

JavaSE中主要的类与方法

1.instanceof:测试左边的对象是否是右边类的实例;  数组.length:返回的是数组的长度;

2.Scanner类
    nextInt():读取键盘录入的整数;  next():读取键盘录入的字符串   nextLIne():读取键盘录入的一行
3.Math类:
    int min():求最小值;  int max():求最大值  long round():四舍五入;  double ceil():向上取整;  double floor():向下取整;
4.String类:
    int length():返回字符串的长度;  String trim():用来去除字符串两端的空白;  String substring():截取字符串,包头不包尾;
    boolean contains():判断是否包含; String concat():连接字符串; String[] split():切割字符串;
    char charAt():返回索引处的字符;  int indexAt():返回指定字符第一次出现的索引; endWith():测试是否指定的后缀结尾;
    matches():正则表达式判断字符串;  replace():替换字符串,返回一个新的字符串;
5.Random类:
    Random random = new Random();
    nextInt(int maxValue):产生一个[0,maxValue)之间的一个随机数;
    nextDouble():产生一个[0,1)的随机数
6.ArrayList类:
    size():返回集合的长度;  add():向集合中添加元素;  get():获取指定位置的元素; remove(int index):移除指定索引处的元素;
    set(int index,元素):设置指定索引处的元素;
7.GUI
JFrame类:设置窗体
    setSize():设置窗体大小;  setLocation():设置窗体位置;  setVisible():设置窗体可见;  setResizable(false):设置窗体大小固定
    setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE):关闭窗口时退出程序;   add():添加按钮;
    setLayout():设置窗体布局;
    JLabel titleLabel = new JLabel(new ImageIcon("FruitStore.jpg"))  存放图片new ImageIcon();
JPanel类:设置面板
    setLayout():设置布局;
JButton类:添加按钮
JDialog类:对话框窗口;
Toolkit类:
    Toolkit kit = Toolkit.getDefaultToolkit();  kit.getScreenSize():获取屏幕尺寸;
    设置窗体标题图片:setIconImage(kit.createImage(titleImagePath))
JScrollPane类:获取滚动条
    setViewportView(table):可视窗口
JTable类:获取表格列表
JLabel类:获取标签
JTextField类:获取文本框
JTextArea类:获取文本域
TableModel类:数据类
JOptionPane类:弹窗提示
    showMessageDialog();  showConfirmDialog();
JComboBox类:下拉选择框
    addItem():添加可选项;   getSelectedItem():获取选中项;  setSelectedItem():设置选中项;
 
                                String[] thead = {"水果编号","水果名称","水果单价","计价单位"};
// String[][] tbody = {
// {"9056","泰国空运大榴莲","120.0","个"},
// {"3025","昌平农家有机草莓","20.0","斤"},
// {"2021","新疆原产哈密瓜","7.0","斤"}
//    };
// //创建TableModel的数据对象
// /*
//  * TableModel数据类的构造方法,第一参数:表体数据  第二参数:表头数据
//  * public DefaultTableModel(String[][] tbody, String[] thead)
//  */
// TableModel dataModel = new DefaultTableModel(tbody, thead);
// //创建表格对象,为成员位置table赋值
// table = new JTable();
// //向Jtable中放数据(TableModel)
// table.setModel(dataModel);
// table.getTableHeader().setReorderingAllowed(false); //列不能移动
// table.getTableHeader().setResizingAllowed(false);  //不可拉动表格
// table.setEnabled(false); //不可更改数据
tablePane.setBounds(50, 50, 500, 200);
// //将列表表格放入视口
// tablePane.setViewportView(table);
常见的监听器:
    * public void addWindowListener(WindowListener l)窗体事件
    * public void addKeyListener(KeyListener l) 键盘事件
    * public void addMouseListener(MouseListener l)鼠标事件
    * public void addFocusListener(FocusListener l)焦点事件
    * public void addActionListener(ActionListener l)按钮动作事件
8.Date类:
    getTime():获取时间;  setTime():设置时间;
    Date与String的相互转换
* a: DateFormat类的概述
* DateFormat 是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。
* DateFormat 是抽象类,所以使用其子类SimpleDateFormat
* public final String format(Date date):将日期转换成字符串格式
* public Date parse(String source):将字符串转换成日期格式
9.Calendar类:日历类,是抽象类,不能直接创建对象.
    getInstance():获取日历类实例    get(int Field):根据字段获取字段值   Date getTime():日历类转为日期类对象
    getTimesInMillis():获取毫秒值
    三种获取时间的方法:
                    System.out.println(new Date().getTime());第一种
        Calendar c = Calendar.getInstance();第二种
        System.out.println(c.getTimeInMillis());

        System.out.println(System.currentTimeMillis());第三种

10.System类:
    currentTimeMillis():获取时间;   exit(int status):退出,status为0时是正常关闭   gc():垃圾回收(不建议使用)
    getProperties():返回系统的集合
11:集合类
Collection:单列集合
    list:ArrayList,LinkedList,Vector
    set:HashSet,TreeSet,HashTable
Map:双列集合
    HashMap,TreeMap
    * a: 添加功能
* put(K key,V value):添加元素。
* 如果键是第一次存储,就直接存储元素,返回null
* 如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值
* b:删除功能
* void clear():移除所有的键值对元素
* V remove(Object key):根据键删除键值对元素,并把值返回
* c:判断功能
* boolean containsKey(Object key):判断集合是否包含指定的键(没讲)
* boolean containsValue(Object value):判断集合是否包含指定的值(没讲)
* boolean isEmpty():判断集合是否为空
* d:获取功能
* Set<Map.Entry<K,V>> entrySet():获取Map集合中所有的Entry所组成的Set集合(没讲)
* V get(Object key):根据键获取值
* Set<K> keySet():获取集合中所有键的集合(没讲)
* Collection<V> values():获取集合中所有值的集合(没讲)
* e:长度功能
* int size():返回集合中的键值对的个数 
 
12.Iterator迭代器(接口)
    list.iterator():通过集合获取迭代器     hasNext():判断是否还有元素   next():取出该元素    remove():移除元素
    itrator是Collection的方法,所有单列集合都可以使用
     listIterator是List分支的集合方法,set集合不能用!
13.Collections:集合工具类
    shuffle():集合中元素打乱顺序     sort():对集合中元素进行排序  binarySearch():查找元素的索引
    addAll():集合中加入多个元素
14.Set 集合接口
     keyset():获取双列集合的键的集合;    entrySet():获取双列集合的键值对集合
15.File类:是IO流中的一员,表示一个文件或者文件夹
    exist():判断文件或者目录是否存在;   isFile():判断是否是文件;   isDirectory():判断是否是文件夹;
    getName():获取文件或者文件夹的名称;   File[]  listFiles():获取该文件夹下所有的子文件或者子文件夹;  String[] list():获取文件名的数组;
    getAbsolutePath():获取文件或者文件夹的绝对路径;    createNewFile():创建新文件   length():获取文件的大小;
    mkdir():创建单级目录;    mkdirs():创建多级目录;   delete():删除文件或者目录;  renameTo():重命名;
    canRead():是否可读;  canWrite():是否可写;  isHidden():是否隐藏;   lastModified():最后一次修改的时间;
    带过滤器的获取功能:
* public String[] list(FilenameFilter filter) 带过滤器的list
* public File[] listFiles(FilenameFilter filter) 带过滤器的listFiles
 
16:Arrays:操作数组的工具类
    toString():将数组内容返回成字符串表现形式;
17.desktop.ini:系统文件,可以被操作系统直接识别
    文件内容:[.ShellClassInfo]
                    IconFile=图标路径
                    IconIndex=0;
    //执行系统命令
Runtime.getRuntime().exec("attrib " + dir.getCanonicalPath() + " +S");
Runtime.getRuntime().exec("attrib "+ myIni.getCanonicalPath()+" +S +H");
18.JFileChooser类:文件选择
        showOpenDialog():打开窗口     getSelectFile():获取选择的文件   showSaveDialog():展示保存文件选择器
19.IO流:
IO流分类
* a: 字节流
* 输出流:OutputStream(抽象类)
|--FileOutputStream(类)
* 输入流:InputStream(抽象类)
|--FileInputStream(类)
* b: 字符流
* 输出流:Writer(抽象类)
|--OutputStreamWriter(转换流)
|--FileWriter(基本字符流)
* 输入流:Reader(抽象类)
|--InputStreamReader(转换流)
|--FileReader(基本字符流)
        高效流:
            字节流:BufferedInputStream/BufferedOutputStream(方法和普通字节流一样)
            字符流:BufferedReader:  readLine():读取一行
                        BufferedWriter:   newLine(): 换行
 
        字节缓冲流:ByteArrayInputStream/ByteArrayOutputStream
 
    FileReader: 
        read():一次读取一个字符,返回的是字符本身,读到末尾返回-1;    read(char[]):读取字符数组
    FileFilter类:
        创建文件名过滤器:FileFilter filter = new FileNameExtensionFilter("txt","txt");  设置过滤器:chooser.setFileFilter(filter);
20.InetAddress类:获取IP地址
        getLocalHost():获取本地主机地址;  getHostAddress():获取IP地址;   getHostName():获取主机名;  getByName(String 主机名):
21.Socket类:套接字编程
    客户端:Socket(String IP,int port):客户端要指定服务器端的IP地址和端口
        getInputStream():获取字节输入流;    getOutputStream():获取字节输出流;   shutdownOutput():结束标记
    服务器端:ServerSocket(int port):指定端口号,供客户端查找
        ServerSocket server = new ServerSocket(int port);  Socket socket = server.accept();获取客户端的套接字对象
22.Thread类:
    start():开启线程;   currentThread():获取当前线程;   getName():获取当前线程名称;     sleep(long miliis):线程睡眠
    setPriority();设置线程的优先级
23.ReenTranLock:获取锁对象:,Lock锁是更灵活地同步解决方法
    ReentrantLock r = new ReentrantLock():  r.lock():获取锁     r.unlock():释放锁
24.ExecutorService :线程池技术
    ExecutorService pool = Executors.newFixedThreadPool(2) 创建线程池
    pool.submit(new MyRunnable());将线程放进池子中并执行;           shutdown();关闭线程池
25.JDBC
    DriverManager类:
        registerDriver(new Driver()):注册驱动        Connection conn = DriverManager.getConnection():获取连接
        Statement stat = conn.createStatement():获取可执行SQL语句的对象
        PreparedStatement:他是Statement的子接口,它提供了预编译功能,为了防止SQL注入攻击的问题
        ResultSet:结果集对象: next():判断是否还有元素
    利用反射注册数据库驱动:
        Class.forName("com.mysql.jdbc.Driver");
    连接池技术:
        BasicDataSource dataSource = new BasicDataSource();             
      dataSource.setMaxIdle(MAX_IDLE);//连接池最大空闲连接个数
            

JavaSE中主要的类与方法