实用类介绍
枚举
枚举指由一组固定的常量组成的类型
定义枚举语法
[Modifier] enum enumName{
enumConstantName1[, enumConstantName2...[;]]
//[field, method]
}
- Modifier是访问修饰符
- enum是关键字
- enumConstantName1[, enumConstantName2…[;]]表示枚举常量列表,枚举常量之间以逗号隔开
- [field, method]表示其他成员,包括构造方法,置于枚举常量的后面
- 在枚举中,如果除了定义枚举常量,还定义了其他成员,则枚举常量列表必须以分号(;)结尾
枚举性别
public enum Sex { //枚举类型
男, 女, value;
String sex;
Sex() {}
public void setSex(String sex){
this.sex=sex;
}
public String getSex(){
return this.sex;
}
}
class TestSex{
public static void main(String[] args) {
Sex man = Sex.男;
man.setSex("male");
System.out.println(man.getSex()); //不是字符串
if (man==Sex.valueOf("男")){
System.out.println("这是个男性");
}
}
}
枚举实例
public class Test1 {
public enum Study {
l1,l2,l3
}
public static void main(String[] args) {
HashMap<Study, String> map = new HashMap<>();
map.put(Study.l1,"大数据开发工程师");
map.put(Study.l2,"大数据挖掘工程师");
map.put(Study.l3,"大数据架构师");
Iterator<Map.Entry<Study, String>> itr = map.entrySet().iterator();
while (itr.hasNext()){
System.out.println(itr.next().toString());
}
}
}
枚举的优点
类型安全
易于输入
代码清晰
课堂笔记
枚举:可以认为是类的变种
里面直接写的值都是该类的公共静态常量,可以用类型.值的方式调用
可以和普通类一样定义属性和方法
valueOf方法常用来将该类的枚举类型与字符串类型比较
常用JavaAPI
包装类
包装类把基本类型数据转换为对象,每个基本类型在java.lang包中都有一个相应的包装类
包装类的作用
提供了一系列实用的方法
集合不允许存放基本数据类型数据,存放数字时,要用包装类型
byte:Byte
short:Short
int:Integer
long:Long
float:Float
double:Double
char:Character
boolean:Boolean
包装类的目的
可以把基本数据类型转成对象
也可以把字符串转成相应的基本数据类型
泛型是不可以放基本数据类型的
装箱和拆箱
把基本数据类型赋值给包装类型叫装箱,反之叫拆箱
以Integer为例:几种赋值方法
new Integer(整形)
new Integer(字符串)
Interger.valueOf(字符串/整形)
Integer.paraseInt(字符串)
public class TestInteger {
public static void main(String[] args) {
Integer num = new Integer(123);
Integer a=128;
//用字符串的构造方法时,必须是数字,否则会抛异常
int b = new Integer("113"); //自动拆箱
Integer c=128;
Integer d=new Integer(128);
Integer e=Integer.valueOf("111");
System.out.println(a==c);
System.out.println(a==d);
String str = "123";
int num1=Integer.valueOf(str);
Character ch = 'l'; // Character没有String类型的构造方法
Character ch1='a';
Boolean flag = new Boolean("tRUe");
System.out.println(flag);
Double dou = new Double("111.11");
System.out.println(dou.intValue());
Integer i = Integer.parseInt("1234");
}
}
包装类的常用方法
XXXValue():包装类转换成基本类型
toString():以字符串形式返回包装对象表示的基本类型数据(基本类型->字符串)
String sex=Character.toString('男');
String id=Integer.toString(25);
parseXXX():把字符串转换为相应的基本数据类型数据(Character除外)(字符串->基本类型)
int num=Integer.parseInt("36");
boolean bool=Boolean.parseBoolean("false");
valueOf()
所有包装类都有如下方法(基本类型->包装类)
public static Type valueOf(type value)
Integer intValue = Integer.valueOf(21);
除Character类外,其他包装类都有如下方法(字符串->包装类)
public static Type valueOf(String s)
Integer intValue = Integer.valueOf("21")
Math类
Math类常用方法介绍:
ceil 向上取整
floor 向下取整
round 四舍五入
public class TestMath {
public static void main(String[] args) {
System.out.println(Math.round(1.49));
System.out.println(Math.round((2.4495+1.3305)*100)/100.0);
double pi = Math.PI;
double e = Math.E;
}
}
导Jar包
file --> New --> Project
如果有配置好的maven,可以直接使用
否则选java --> next --> next --> Test_Jar (project名) --> Finish
src -->new package --> testJar(package名)
testJar --> new java class --> test_Jar(class名)
编入代码:
public class test_Jar {
public void sayHi(){
System.out.println("Hi");
}
}
File --> Project Structure --> Modules --> Dependencies --> +
+号在页面靠右上,或者用alt+insert
选择第一个 1.JARs or directories
然后选择需要配置的jar包
我这里是图里的两个:
导入后打钩,但是不要急着点apply或者ok
回到sources里,在src文件夹底下创建一个新的名为test的文件夹
然后点上面一栏绿色的Tests按钮,最后点apply和ok
到这里就算配置好了
在test_Jar里随意写一个方法,
public void sayHi(){
System.out.println("Hi");
}
然后ctrl+shift+t,弹出create new test对话框,把这个方法勾选上,点ok,之后会自动test文件夹底下生成对应的可运行的文件