第二周学习

来源:互联网 发布:有色金属价格走势软件 编辑:程序博客网 时间:2024/06/02 00:32

1.字符串

index:值从0开始

String:不可变性(所指向的内存空间不变)

常用方法:  

length()     返回字符串长度

charAt()     求某个位置的字符

substring()   (2)从index=2开始到字符串结束的子字符串

            (2,4)从index=2到index=4之前(不包括在4位置

                    的字符)

indexOf()     在字符串中第一次出现的位置

lastIndexOf()   在字符串中最后一次出现的位置

toLowerCase() toUpperCase()    大小写转换

byte[] arrs =str.getBytes() 将字符串str转换成byte数组arrs

String string=new String(arrs)   将byte数组arr转换成字符串

StringBuilder,StringBuffer:可变

StringBuffer是线程安全的,StringBuilder没

有,所以StringBuilder执行速度更快

StringBuilder 常用方法:

append(参数)  追加内容到对象末尾

insert(位置,参数)  插入指定位置

toString()      将StringBuilder对象转换为String对象

length()     长度

2.异常

try-catch-finally   catch(Exception e) 异常类型

   System.exit(1);终止程序运行,可以在catch块里放

   return语句会在finally执行完后再返回值

throws声明抛出异常类型

   public void method() throws Exception1,Exception2…..{}

throw 抛出异常,抛出的只能是Throwable或其子类实例对象

   throw new IOException();

   a.抛出后自己try catch处理  b.throws,来让调用方法的处理

自定义异常:

定义一个类,去继承Throwalbe类或者它的子类

 

3.集合

List  有序可重复   ArrayList  LinkedList 

常用: list.add()添加,list.size()长度,list.remove()移除

   特有:list.get() 显示

  set  无序不允许重复,遍历显示依靠迭代器方法Iterator()

       且需要重写两个方法:hashCode equals

           Iterator it =set.iterator();

Iterator两个重要方法:

          hasNext()检测集合中是否还有下一个元素

          next()返回集合中下一个元素

添加删除后,要显示,需要重新再调用iterator方法

it =set.iterator();

map  (key,value)键值   添加put()

values()  

entrySet()  Set set=x.entrySet(); 

      x.getKey(),x.getValue()去取得key和value   

keySet() 键存入到set集合中,根据get(key)可以找到对应值

 

4.线程:进程中的一个执行流程

两种启动方式:

Thread:继承Thread类  MyThreadextends Thread

       启动时:new MyThread().start()

Runnable:实现Runnable接口

       启动时:new Thread(new MyRunnable()).start()

           例如: Weather weather =new Weather();

      new Thread(new GenerateWeather(weather)).start();

 

状态和生命周期:新建,可运行,运行,阻塞,中止

常用方法sleep()是Thread里静态方法,直接Thread.sleep()调用

         join()抢占

线程同步: synchronized 可以用在:成员方法,静态方法,代码块

          代码块synchronized(this){ } 

     确保共享对象在同一个时刻只能被一个线程访问

通信:wait()中断方法执行,使线程等待,notify().notifyAll()

死锁:2个线程相互等待对方释放“锁”

 

5.I/O 输入/输出,读/写

 

0 0
原创粉丝点击