Java基础语法



异常



处理异常

try....catch代码块     try....catch...finally

try中是发生异常代码,catch是捕获异常的处理,通过可以提醒用户。

当代码有多个异常需要捕获的时候,可以使用try....catch...catch   catch多重语句块。

catch中处理多个catch时,需要注意:
  1. 顺序问题,从上到下的捕获的异常,应该先是子类在是父类,从小到大。
try...catch...finally 中finally存放必须是执行的。

throw与throws


throws是申明在方法后面。
throw是动词,就是手动抛出一个异常,申明在方法体。必须在方法后用throws申明,否则不能受到抛出

自定义异常


定义自己的异常需要继承异常基类(Exception)

String

创建字符串:
String s1 = new String("我爱学习");String s2 = "我爱学习";String s3 = "我爱学习";System.out.println(s2==s3);//trueSystem.out.println(s1==s3);//false


这两个变量存放的是字符常量,而且属性值相同,属性系统就分给他们一个地址。原因是先在常量池中创建一个对String类的对象引用变量str,然后查找常量池中有没有存放"我爱学习",如果没有,则将"abc"存放并令str指向”我爱学习”,如果已经有”我爱学习”则直接令str指向“我爱学习”。 如果属性值相同,但是用new的String,就地址不一样了。

StringBuilder和StringBuffer

[java]  view plain  copy
  1. String s3 = "我爱学习";  
  2. System.out.println(s3+"天天向上");  

字符串是不可变的, 按照上面的操作,系统就需要在分配一个地址给他,多次操作带来的问题就是需要多个临时变量的地址,浪费资源。由此我们引出了至于 StringBuilder 和StringBuffer ,它们基本相似,不同之处,StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。

[java]  view plain  copy
  1. StringBuilder sb = new StringBuilder();  
  2. StringBuilder sb2 = new StringBuilder("我爱学习");  

常用方法

[java]  view plain  copy
  1. <span style="white-space: pre;">        </span>StringBuilder sb2 = new StringBuilder("我爱学习");  
  2.         System.out.println(sb2.append("天天向上"));  

append是在字符串后面添加另一个字符串,并用原先的字符串地址,不另外占用地址。

基本类型的包装类



以Integer为例,看看如何构造包装类对象
[java]  view plain  copy
  1. Integer i = new Integer("1");  

包装类常用方法



包装类转基本类型(拆箱)  

以int类型为例

Integer i = new Integer("1");int a = i.intValue();

java日期处理

获取系统时间
Date date = new Date();System.out.println(date);
打印结果:Mon Mar 27 11:12:28 CST 2017。

通常这样,不是我们所看到的结果。所以我们需要对时间进行格式化。

SimpleDataFormat

Date date = new Date();System.out.println(date);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String s = sdf.format(date);
常用的转换格式

"yyyy年MM月dd日 HH时mm分ss秒""yyyy/MM/dd HH:mm""yyyy-MM-dd HH:mm:ss"
时间字符串转时间格式
String s12 = "2017-03-27 11:17:47";SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date2 = null;try {date2 = sdf1.parse(s12);} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(date2);

Calendar

获取日历中时间

Calendar calendar = Calendar.getInstance();//通过Calendar//提供的静态方法去提供一个实例。int year = calendar.get(Calendar.YEAR);//获取年int month = calendar.get(Calendar.MONTH)+1;//获取月 ,需要注意获取月份从0开始,//变成我们的需要加1int day = calendar.get(Calendar.DAY_OF_MONTH);//获取天数int hour = calendar.get(Calendar.HOUR);int minute = calendar.get(Calendar.MINUTE);int second = calendar.get(Calendar.SECOND);
Date date1 = calendar.getTime();//将日历中时间转成日期型long current = calendar.getTimeInMillis();//将日历中时间转成毫秒数.

Math

Maths类提供一些静态方法,用于数学运算。
double double1 = Math.random();//random可以随机产生一个0~1之间小数

异常



处理异常

try....catch代码块     try....catch...finally

try中是发生异常代码,catch是捕获异常的处理,通过可以提醒用户。

当代码有多个异常需要捕获的时候,可以使用try....catch...catch   catch多重语句块。

catch中处理多个catch时,需要注意:
  1. 顺序问题,从上到下的捕获的异常,应该先是子类在是父类,从小到大。
try...catch...finally 中finally存放必须是执行的。

throw与throws


throws是申明在方法后面。
throw是动词,就是手动抛出一个异常,申明在方法体。必须在方法后用throws申明,否则不能受到抛出

自定义异常


定义自己的异常需要继承异常基类(Exception)

String

创建字符串:
String s1 = new String("我爱学习");String s2 = "我爱学习";String s3 = "我爱学习";System.out.println(s2==s3);//trueSystem.out.println(s1==s3);//false


这两个变量存放的是字符常量,而且属性值相同,属性系统就分给他们一个地址。原因是先在常量池中创建一个对String类的对象引用变量str,然后查找常量池中有没有存放"我爱学习",如果没有,则将"abc"存放并令str指向”我爱学习”,如果已经有”我爱学习”则直接令str指向“我爱学习”。 如果属性值相同,但是用new的String,就地址不一样了。

StringBuilder和StringBuffer

[java]  view plain  copy
  1. String s3 = "我爱学习";  
  2. System.out.println(s3+"天天向上");  

字符串是不可变的, 按照上面的操作,系统就需要在分配一个地址给他,多次操作带来的问题就是需要多个临时变量的地址,浪费资源。由此我们引出了至于 StringBuilder 和StringBuffer ,它们基本相似,不同之处,StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。

[java]  view plain  copy
  1. StringBuilder sb = new StringBuilder();  
  2. StringBuilder sb2 = new StringBuilder("我爱学习");  

常用方法

[java]  view plain  copy
  1. <span style="white-space: pre;">        </span>StringBuilder sb2 = new StringBuilder("我爱学习");  
  2.         System.out.println(sb2.append("天天向上"));  

append是在字符串后面添加另一个字符串,并用原先的字符串地址,不另外占用地址。

基本类型的包装类



以Integer为例,看看如何构造包装类对象
[java]  view plain  copy
  1. Integer i = new Integer("1");  

包装类常用方法



包装类转基本类型(拆箱)  

以int类型为例

Integer i = new Integer("1");int a = i.intValue();

java日期处理

获取系统时间
Date date = new Date();System.out.println(date);
打印结果:Mon Mar 27 11:12:28 CST 2017。

通常这样,不是我们所看到的结果。所以我们需要对时间进行格式化。

SimpleDataFormat

Date date = new Date();System.out.println(date);SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String s = sdf.format(date);
常用的转换格式

"yyyy年MM月dd日 HH时mm分ss秒""yyyy/MM/dd HH:mm""yyyy-MM-dd HH:mm:ss"
时间字符串转时间格式
String s12 = "2017-03-27 11:17:47";SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date2 = null;try {date2 = sdf1.parse(s12);} catch (ParseException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println(date2);

Calendar

获取日历中时间

Calendar calendar = Calendar.getInstance();//通过Calendar//提供的静态方法去提供一个实例。int year = calendar.get(Calendar.YEAR);//获取年int month = calendar.get(Calendar.MONTH)+1;//获取月 ,需要注意获取月份从0开始,//变成我们的需要加1int day = calendar.get(Calendar.DAY_OF_MONTH);//获取天数int hour = calendar.get(Calendar.HOUR);int minute = calendar.get(Calendar.MINUTE);int second = calendar.get(Calendar.SECOND);
Date date1 = calendar.getTime();//将日历中时间转成日期型long current = calendar.getTimeInMillis();//将日历中时间转成毫秒数.

Math

Maths类提供一些静态方法,用于数学运算。
double double1 = Math.random();//random可以随机产生一个0~1之间小数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值