随笔——Java编程学习(二)eclipse的使用以及Java内置的基础库类

本文介绍了Eclipse的常用快捷键,如自动补全代码、删除当前行等,并探讨了Java内置的基础库类,包括toString方法、Scanner、String、StringBuffer和StringBuilder的比较、Arrays工具类、Math类的数学操作、BigDecimal进行精确计算的方法,以及Date、Calendar、基本类型包装类的相关知识点,同时讲解了自动拆箱和装箱的概念。

面向对象编程(五)——eclipse的使用以及Java内置的基础库类

Eclipse快捷键

最常用的15大Eclipse开发快捷键技巧

  1. alt+?或alt+/:自动补全代码或者提示代码
  2. ctrl+d:删除当前行
  3. ctrl+page down或ctrl+page up: 选项卡之间快速切换
  4. Alt+方向键上下:上下行交换内容或把当前行内容把上或下移动
  5. ctrl+/:自动注释当前行或者被选中的多行 (再次按下取消注释)
  6. ctrl+shift+/:自动注释掉选择的代码块 ctrl+shift+\:取消注释
  7. ctrl+shift+o:自动引入包和删除无用包
  8. 先alt+shift+s再按f键:格式化代码(使代码按格式对齐)

toString方法

  • 默认的作用就是取得对象的内存地址(引用)
  • 当把一个对象当作字符串使用时,默认会调用toString()方法

学习Java推荐书籍:

  • Head First Java (比较卡通形象,可以没有任何编程经验的人看)
  • Java疯狂讲义(比较详细)
  • Java编程思想(比较深入)
  • Java从入门到精通(比较简略)

Scanner

  1. s.hasNextXXX(); //判断下一个是否为XXX类型
  2. s.next();// 获取到用户输入的字符串
  3. s.nextXXX();//获取到用户输入的XXX类型的字符串,如用户输入的字符串中没有XXX类型的字符串,则会抛出异常。

案例理解: 让用户输入用户名和密码以及年龄,判断是否注册成功。

import java.util.Scanner;

public class ScannerTest {
   public static void main(String[] args){
   	Scanner s=new Scanner(System.in);
   	
   	String username=null;
   	String password=null;
   	int age=0;
   	System.out.println("请输入用户名:");
   	username=s.nextLine();//返回的是输入回车之前的所有字符
   	System.out.println("请输入密码:");
   	password=s.nextLine();
   	
   	System.out.println("请输入年龄:");
   	while(s.hasNextInt()==false){
   		System.out.println("你输入的不是年龄");
   		s.next();//接收到用户已输入的不是数字的数据,这样用户就可以继续输入
   	}
   	age=s.nextInt();
   	
   	System.out.println("注册成功:"+username+password+age);		
   }
}

StringStringBuffer和StringBuilder

  1. String字符串的构造(一旦被赋值不能被修改)
  2. StringBuffer和StringBuilder可以创建一个可以被修改的字符串
  3. StringBuffer和StringBuilder使用起来基本相同
  4. StringBuffer和StringBuilder的区别: StringBuffer线程安全,但是性能略低。StringBuilder线程不安全但是性能略高。
  5. 字符串的存储,在内存里面JDK9之前使用char数组存储,JDK9里面使用byte数组存储。

Arrays数组工具类

import java.util.Arrays;

public class ArraysTest {
	public static void main(String[] args){
		int[] a={34,456,48,487,45,122};
		Arrays.sort(a);//排序
		int index=Arrays.binarySearch(a, 45);//确认某个数在数组内的位置(必须先排序才可以调用)
	    System.out.println(index);
	}
}

Math数学类

  1. PI //圆周率
  2. E //自然对数的底数
  3. 三角函数相关方法
    1. round(x): 四舍五入
    2. sqrt: 平方根
    3. pow(x,y): 乘方x的y次方
    4. abs(x): 取绝对值
    5. ceil: 向上取整 //当小数部分为1-9时,取值为整数部分加1。例:Math.ceil(3.1)=4;当小数部分为0时,取整数部分值。例Math.ceil(3.0)=3
    6. floor 向下取整 //当小数部分为0-9时,取值为整数部分。例:Math.floor(4.6)=4
    7. max(x1,x2) 求最大值
    8. min(x1,x2) 求最小值
    9. random() 生成随机数,默认范围[0,1)
    public class MathTest {
     public static void main(String[] args) {
     	System.out.println(Math.random());//生成随机数,默认范围[0,1)
     	System.out.println(Math.random()*5);//生成随机数,范围为[0,5)
     	System.out.println(Math.floor(Math.random()*5));//生成随机数,范围为[0,5)之间的整数
     	System.out.println((int)(Math.random()*5));//生成随机数,范围为[0,5)之间的整数
     	System.out.println((int)(Math.random()*3)+6);//生成随机数,默认范围[6,8)
     }
    }
    

BigDecimal类:做精确的加减乘除运算

1. 创建
①BigDecimal f1 = new BigDecimal(“0.05”);//首推
②BigDecimal f2 = BigDecimal.valueOf(0.01);//次推,会有小误差
③BigDecimal f3 = new BigDecimal(0.05);//不推荐使用
2. 使用
①add //加法运算
②subtract //减法运算
③multiply //乘法运算
④divide //除法运算

关于Date、Calendar 日期和时间相关类

1. Date d = new Date(); //创建一个当前时间的日期类
2. Calendar calendar = Calendar.getInstance(); //创建一个当前时间,获取到的数据内容比Date的更全

基本类型包装类

基本类型的包装类基本类型
Bytebyte
Shortshort
Integerint
Longlong
Floatfloat
Doubledouble
Characterchar
Booleanboolean

特殊的包装类: BigInteger可以表示任意大小的整数

包装类常用操作

  1. 基本类型数据和字符串之间的转换
  2. intValue 成员方法,获取到包装类所拥有的值
  3. parseInt 静态方法,把字符串转换为数字
  4. toString 静态方法,把数字转换为字符串
  5. valueOf(int i) 静态方法,把一个整数转换为包装类对象
  6. valueOf(String s) 静态方法,把字符串转换为包装类对象

自动拆箱和装箱

1. 装箱: Integer i = 100;//=Integer.valueOf(100);当基本类型赋值给引用类型时,它会把基本类型100装箱赋值给i
2. 拆箱:

Integer i=100; //装箱   =Integer.valueOf(100);
i+=100;  //i=i.intValue()+100;  先拆箱再装箱
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值