文章列表
集合框架
在数组的使用过程中可以看到,想要向数组中插入元素和删除元素非常麻烦,而且数组的长度是无法改变的。java为我们提供了批量存储数据更加方便的容器,就是集合。
集合和数组的作用一样,都是为了使用一个变 ...
- 2015-08-12 15:59
- 浏览 234
- 评论(0)
泛型
先给大家举个例子;如现在有一家工厂,可以生产手机,也可以生产电脑。以后还可能生产其他产品。
如果给某个工厂加上了泛型,就规定了这个工厂只能生产手机或电脑,不能再生产其他产品了。实例:
package generic;
/**
* 产品枚举Product
* @author 学霸联盟 - 赵灿
*/
public enum Product {
手机,电脑
}
package generic;
/**
* 手机类Phone
* @author 学霸联盟 - 赵灿
*/
public class Phone {
/**
* 拨打电话的方法call
*/
publi ...
- 2015-08-12 14:51
- 浏览 221
- 评论(0)
二分法查找算法
基本步骤:
第一步:获取数组中间的下标
第二步:中间下标处的值和目标值比较,如果目标值大,说明要找的值在数组的后边一半中
第三步:再次获取数组右边一半的中间下标
第四步:再次用获得的中间下标和目标值进行比较
后续步骤以此类推,这样每次查找都在“半份”数据中进行,所以又叫折半查找。这也是为什么使用二分法查找之前必须要对数组进行排序的原因。如果不排序,将无法判断目标值在哪“半份”中实例:
package algorithm.binary_search;
/**
* 演示二分法查找算法
* @author 学霸联盟 - 赵灿
*/
public c ...
- 2015-08-12 14:46
- 浏览 430
- 评论(0)
选择排序
步骤一、选取一组数据中起始位置(下标)上的数据,和其后的各个位置(下标)上数据进行比较;如果起始位置(下标)上的数据大(升序)或小(降序),就将两个位置上的数据进行交换;这样完成一轮比较之后 ...
- 2015-08-12 14:19
- 浏览 306
- 评论(0)
Arrays类
数组的一个工具类,提供了一些静态的方法,用于操作数组;
不多说,直接上例子实例:
//声明包
package array;
//导入包
//作用:告诉系统,ArraysDemo类中用到Arrays类时去java.util包下找Arrays类
import java.util.Arrays;
/**
* 演示Arrays类的常用方法
* @author 学霸联盟 - 赵灿
*/
public class ArraysDemo {
public static void main(String[] args) {
// 声明三个数组
int[] array1 = { ...
- 2015-08-11 19:22
- 浏览 218
- 评论(0)
数组
举例:假如现在有十个人排成一队【张三,李四,王五……】,这个队的队名叫A,然后要求第一个人从0开始报数【张三报0,李四报1,王五报2……】。现在要求第一个人出列,但现在还不知道张三的名字,怎么办?那么只 ...
- 2015-08-11 19:14
- 浏览 394
- 评论(0)
枚举
枚举简单的说就是将需要的常量值一个一个的列举出来,并封装成一个整体。
语法格式:[public] enum 枚举名{ //值列表 }
声明格式:枚举名 变量名;
赋值格式:变量名 = 枚举名.值
其中的列举的每个值要符合标识符命名规则,不可随意编写实例:
package enumdemo.simple;
/**
* 创建枚举类型的Week 注意:这里创建的是枚举,即数据类型是enum,而不是类
* @author 学霸联盟 - 赵灿
*/
public enum Week {
// 列举出周的值,中间用英文格式的逗号隔开
// 枚举中没有类型之分,直接列举需要的值即可
...
- 2015-08-11 19:01
- 浏览 188
- 评论(0)
咱先了解即可
Math类:数学类,包括abs()求绝对值,sin()正弦函数,cos()余弦函数等等
Random类:获取各种数据类型的随机数实例:
import java.util.Random;
/**
* 演示获取随机数
* @author 学霸联盟 - 赵灿
*/
public class MathDemo {
public static void main(String[] args) {
//创建Random对象
Random random = new Random();
//获取一个double类型的0到1之间的随机数
double d = random ...
- 2015-08-11 18:55
- 浏览 358
- 评论(0)
Date 类
创建对象时,默认获取系统当前时间
SimpleDateFormat类
用来格式化日期的;创建对象是可以传入格式:new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");主要方法format(Date)
Calendar类
可以使用SimpleDateFormat类中的getCalendar()方法获取对象。常用方法:get(int); 常用属性:YEAR MONTH...实例:
package common_class;
import java.text.SimpleDateFormat;
import java.uti ...
- 2015-08-11 18:48
- 浏览 224
- 评论(0)
Scanner类(了解即可)
使用Scanner类接收键盘的输入1、创建Scanner对象的语法:Scanner scan = new Scanner(System.in);2、使用Scanner对象接收键盘输入:scan.next();//等待并接收键盘输入实例:
package common_class;
import java.util.Scanner;
/**
* 演示Scanner类
* 模拟用户登录
* @author 学霸联盟 - 赵灿
*/
public class ScannerDemo {
public static void main(String[] args ...
- 2015-08-11 18:45
- 浏览 353
- 评论(0)
包装类
每种基本数据类型都有对应的包装类
byte – Byte
shor – Short
int – Integer
long – Long
float – Float
double – Double
char – Character
boolean – Boolean
前面是基本数据类型(值类型),后面是其对应的包装类型(引用类型)
从包装类自动转换为对应的基本数据类型的过程,叫做自动拆箱
例如:int i = new Integer(8);
从基本数据类型,自动转换为对应的包装类型的过程,叫做自动装箱
例如:Integer i = 8;实例:
pac ...
- 2015-08-11 18:36
- 浏览 268
- 评论(0)
这里只简单介绍这两个类常用的几个方法,至于同步和异步对于初学者可以暂时忽略,以后讲到线程的时候在详细讲解
StringBuffer类:线程不安全的(异步)
StringBuilder类:线程安全的(同步)
常用方法:
append() 追加字符串
delete() 删除字符串
insert() 插入字符串实例:
package common_class;
/**
* 演示StringBuffer类
* @author 学霸联盟 - 赵灿
*/
public class StringBufferDemo {
public static void main(S ...
- 2015-08-11 18:30
- 浏览 245
- 评论(0)
String类
首先,String是引用类型,也是唯一一个可以不使用关键字new创建对象的引用类型,因为有字符串常量值,使用英文格式的双引号""括起来就是字符串常量值。
创建对象的两种方式
方式一、String s1 = “abc”;
方式二、String s2 = new String(“abc”);
这两种方式都是创建了一个字符串对象,值都是字符串abc;
不同的是
方式一是直接使用字符串常量abc赋值给变量s1,此时系统先到常量池中查找有没有字符串常量abc,如果有将字符串常量abc在常量池中的地址赋值给变量s1,如果没有会将字符串 ...
- 2015-08-11 17:44
- 浏览 237
- 评论(0)
Object类
所有引用类型的顶级父类,任何一个类都会直接或者间接的继承它。
当使用class关键声明一个类,而未使用extends继承任何类时,默认继承Object类的。
Object类中常用方法的源码/*
作用:获得对象的hashCode值
在现阶段可以简单理解该方法获得的就是对象在内存中的地址
*/
public native int hashCode();
/*
作用:比较两个对象是否是同一个对象
从源码可以看到,方法内部是使用双等号==判断的。
使用双等号判断两个对象时,本质就是在比较两个对象的hashCode值是否相等
*/
public boolean equals(Obje ...
- 2015-08-11 17:37
- 浏览 288
- 评论(0)
接口
两个实体之间通信方式的规范,将内部操作和外部沟通分离,使其任意一方都能实现修改内部而不影响外界其他实体与其交互的方式。
接口使用关键字interface声明,一般会在接口名前加上大写的I作为前缀
语法格式:[public] interface I接口名{}
接口中的属性:只能是常量,默认不写:public static final修饰的,写也只能写这些关键字中的一个或多个,不能写其他的
接口中的方法:只能是抽象方法,默认不写:public abstract 修饰的,写也只能写这些关键字中的一个或多个,不能写其他的
接口中不能包含构造方法
接口支持多实现,一个类实现多个接口时, ...
- 2015-08-10 18:56
- 浏览 194
- 评论(0)