泛型接口、JAVA API、包装类
泛型接口就是拥有一个或多个类型参数的接口
语法:
public interface 接口名<类型形参>{
方法名(类型形参 类型形参实例);
}
示例:
public interface TestInterface<T>{
public T print(T x)
}
需要注意的是,不具体指定数据类型,由使用此接口的用户决定数据类型。
实例:定义姓名,年龄性别,并赋值输出。
首先定义姓名,年龄,性别属性
private T name;
private E age;
private K sex;
并生成对应的get set方法.
在主方法中创建对象,并指定传入的数据类型。
Student<String, Integer, Character>stu=new Student<String, Integer, Character>();
然后用set方法存入,最后输入姓名,年龄,性别
运行结果:张 22 男
Java API
Java API 即Java应用程序接口,它是运行库的集合,预先定义了一些接口和类,程序员可以直接使用已经打包好的接口和类做具体的应用。
Java语言的强大之处在于它提供了多种多样的类库,从而大大提高了程序编程的效率和质量。
Java API提供的常用包
java.lang 包装类、Math类、String类等 提供了java程序的基础类和接口
java,util Collection、List和Map等集合接口和类 系统辅助类
java.io 字节流、字符流等 文件操作类‘
java.net Socket ServerSocket等类 网络编程相关类
java.sql Connection Statement等类 数据库相关类
枚举
语法:
[Modifier] enum enumName{
enumContantName1[,enumConstantName2...[;]]
//[field,method]
}
枚举指由一组固定的常量组成的类型
使用枚举的好处
类型安全、代码清晰、易于输入
包装类
Java语言是面向对象的,但是Java中的基本数据类型却不是面向对象的,为了解决这个不足,在设计类时为每个基本类型设计了一个对应的类,称为包装类
包装类是件基本类型封装到一个类中,包含属性和方法,方便对象操作,包装类位于java.lang包中
包装类和基本数据类型对应表(基本类型 包装类)
byte Byte boolean Boolean short Short char Character int Integer long Long float Float double Double
基本数据类型转换为包装类
Integer int Value=new Integer(21);
或Integer intValue=new Integer("21");
Integer intValue=Integer.valueOf("21")
包装类转换成基本类型
Integer integerld=new Integer(25); int intld=integerld.intValue();
基本类型和包装类的自动转换
Integer intObject=5; int intValue=intObject;
Math类
java.lang.Math类提供了常用的数学运算方法和两个静态常量E(自然对数的底数)和PI(圆周率);
Random类可以生成随机数
Random生成随机数实例:
需求说明及分析
编码实现双色球的功能
分析:双色球规则红球33选6,蓝球16选1,不允许重复,使用Math类的random()方法再1-33内随机产生6个红球号码,每产生一个判断是否已经在数组中存在,不存在则保存于数组,否则重选,从1-16见随机产生一个蓝球号码
package com.caipiao;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class Test {
public static void main(String[] args) {
//产生1--33的数字,不重复,升序
List<Integer> list=new ArrayList<Integer>();
//产生随机数
//循环添加,循环次数不确定
System.out.println("中奖号码:");
while (true) {
int rand=(int)((Math.random()*33)+1);
//产生的随机数在集合中不存在,则添加
if(!list.contains(rand)){
list.add(rand);
}
//判断
if(list.size()==6){
break;//退出循环
}
}
//排序
Collections.sort(list);
//遍历输出
for (Integer integer : list) {
System.out.print(integer+" ");
}
int rand=(int)((Math.random()*16)+1);
System.out.println("+"+rand);
}
}
输出结果为(随机):
中奖号码:
3 5 9 15 16 28 +6
equals():检查组成字符串内容的字符是否完全一致
==:判断两个字符串在内存中的首地址,即判断是否是同一个字符串对象
将小写转换为大写:toUpperCase()
将大写转换为小写:toLowerCase()
泛型接口、JAVA API、包装类的更多相关文章
- Java API ——包装类
1.包装类的概述 · 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据. · 常用的操作之一:用于基本数据类型与字符串之间的转换. · 基本类型和包装类的对应 为了对基本数据 ...
- Java API 快速速查宝典
Java API 快速速查宝典 作者:明日科技,陈丹丹,李银龙,王国辉 著 出版社:人民邮电出版社 出版时间:2012年5月 Java编程的最基本要素是方法.属性和事件,掌握这些要素,就掌握了解决实际 ...
- 浅谈Java的包装类
一.什么是Java包装类 所谓Java包装类,就是将Java中的8种基本数据类型分别包装成为类的形式.包装类与基本数据类型的对应关系如下表所示. 基本数据类型 包装类 byte Byte short ...
- mybatis Java API
既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了. MyBatis 的 Java API 就是你收获你所做的努力的地方.正如你即将看到的,和 JDBC 相比, MyB ...
- Java数据持久层框架 MyBatis之API学习八(Java API详解)
对于MyBatis的学习而言,最好去MyBatis的官方文档:http://www.mybatis.org/mybatis-3/zh/index.html 对于语言的学习而言,马上上手去编程,多多练习 ...
- Java开发知识之Java的包装类
Java开发知识之Java的包装类 一丶什么是包装类 包装类的意思就是对基本数据类型封装成一个类.这些类都是Number的子类.区别就是封装数据类型不同.包含的方法基本相同. 具体可以查询JAVA A ...
- MyBatis——Java API
Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升技能了. MyBatis 的 Java API 就是你收获你所做的努力的地方.正如你即将看到的,和 JDB ...
- Mybatis学习--Java API
学习笔记,选自Mybatis官方中文文档:http://www.mybatis.org/mybatis-3/zh/java-api.html#directoryStructure 既然你已经知道如何配 ...
- Java-MyBatis: MyBatis3 | Java API
ylbtech-Java-MyBatis: MyBatis3 | Java API 1.返回顶部 1. Java API 既然你已经知道如何配置 MyBatis 和创建映射文件,你就已经准备好来提升 ...
随机推荐
- DC-2靶机
DC-2 靶机获取:http://www.five86.com/ 靶机IP:192.168.43.197(arp-scan l) 攻击机器IP:192.168.43.199 在hosts文件里添加:1 ...
- 【转】linux tar.gz zip 解压缩 压缩命令
http://apps.hi.baidu.com/share/detail/37384818 download ADT link http://dl.google.com/android/ADT-0. ...
- Unity进阶之ET网络游戏开发框架 02-ET的客户端启动流程分析
版权申明: 本文原创首发于以下网站: 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123 优梦创客的官方博客:https://91make.top ...
- 入门MySQL——查询语法练习
前言: 前面几篇文章为大家介绍了DML以及DDL语句的使用方法,本篇文章将主要讲述常用的查询语法.其实MySQL官网给出了多个示例数据库供大家实用查询,下面我们以最常用的员工示例数据库为准,详细介绍各 ...
- 危险的Hystrix线程池
本文介绍Hystrix线程池的工作原理和参数配置,指出存在的问题并提供规避方案,阅读本文需要对Hystrix有一定的了解. 文本讨论的内容,基于hystrix 1.5.18: <dependen ...
- spring-cloud-config 配置中心快速上手
spring-cloud-config 配置中心实现 Spring Cloud Config 用于为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,分为server端和client端. s ...
- java 程序执行顺序之继承
1.首先会初始化父类,因为没有父类子类也无从谈起.第一步初始化static 变量 或者 静态初始化话块 2.初始化子类的static 变量 或者 静态初始化块 3.顺序初始化父类普通变量 或者 父类普 ...
- 使用flask-restful搭建API
最简单的例子 ---~~~~ 访问http://127.0.0.1:5000/ , 返回{"hello": "world"} from flask import ...
- js获取Cookie,获取url参数
function getCookie(name) { var strCookie = document.cookie; var arrCookie = strCookie.split("; ...
- linux的一些简单命令
简单学习了一些linux相关的知识,自己做一个简单的总结,可以在一般工作中命令行状态下装装B,哈哈 正则相关 grep grep xxx yyy.file 查找出yyy文件中存在xxx的行 通配符 * ...