java
文章平均质量分 57
pingzishinee
这个作者很懒,什么都没留下…
展开
-
MVC模式了解
M:Model模型V:View视图C:Controller控制器MVCPatternDemo例:创建一个作为模型的Student对象。StudentView视图类:把学生详细信息输出到控制台【显示】;StudentController控制器类:负责存储数据到student对象中,并相应地更新视图StudentView。1、创建模型//Student.javapublic class Student(){ private String rollNo; private String name;原创 2020-07-29 14:42:10 · 138 阅读 · 0 评论 -
java 字节数组byte[]转为double[]数组
读二进制文件(文件里面是double型二进制数据,共32个字节,对应的十进制数是1.0,2.0,3.0,4.0)。把32字节的byte[]数组,每8个字节转一个double,转成了一个double列表。代码如下:import java.io.*;import java.util.ArrayList;/** * @program: WordC * @description: 读二进制文件...原创 2020-01-15 17:42:35 · 4109 阅读 · 2 评论 -
集合、集合的顶层接口Collection、迭代器接口、迭代器遍历集合
集合集合的特点集合只能存储对象(引用类型),集合长度可变。集合可以存储不同类型的对象。 java提供了多种集合类。集合的集成体系 体系老大:Collection 自上至下从抽象到具体,最底层是具体的类。Collection——集合的顶层接口Collection的功能...原创 2018-08-21 22:03:34 · 1853 阅读 · 0 评论 -
Arrays类
Arrays类是一个对数组操作(排序、查找等)的工具类。 Arrays的一些方法:以下仅以int型数组举例public static String toString(int[] a):将数组转成字符串public static void sort(int[] a):对数组排序 底层是用快速排序实现的public static int binarySearch(int[] a, in...原创 2018-08-21 17:49:42 · 162 阅读 · 0 评论 -
Set、HashSet、LinkedHashSet
SetSet:不包含重复元素的Collection。 特点:无序(存储顺序和取出顺序不一致),唯一HashSet它不保证set的迭代顺序,特别是它不保证该顺序恒久不变。...原创 2018-08-28 17:26:00 · 183 阅读 · 0 评论 -
泛型
引出集合模仿着数组的做法,在创建对象时候明确元素的数据类型。这种技术称为泛型。 泛型:“参数化类型”,把类型当作参数一样的传递。 格式:<数据类型> 此处的类型只能是引用类型。 好处:把运行时期的问题提到了编译期间;避免了强制类型转换;优化了程序设计,解决了黄色警告线。Jdk API文档中的<E>表示要使用泛型。一般来说就是在集合中使用。之前集合的代...原创 2018-08-23 21:05:55 · 101 阅读 · 0 评论 -
String类
概述字符串。 字符串也可以看作是字符数组。 字符串字面值”abc”也可以看成是一个字符串对象。 方法区有个字符串常量池存放字符串常量。 注:字符串是常量,一旦被赋值,就不能被改变。指的是:它的值在创建后不能变。如,String s= “hello”, s+=”world”,此时s为helloworld了。意思是”hello”不能变,而不是s这个引用类型,s可以引用其他的。...原创 2018-08-20 21:15:54 · 204 阅读 · 0 评论 -
TreeMap
键是红黑树结构。保证键的排序。 排序:自然排序、比较器排序。 参考TreeSet学习。Set存的是单个的,Map存的是一对一对的。案例1:键String类型,值String类型 TreeMap<String, String> tmap= new TreeMap<String, String>();//无参构造,自然排序 tmap....原创 2018-08-30 22:14:44 · 1434 阅读 · 0 评论 -
HashMap、创建并遍历HashMap集合、LinkedHashMap
HashMap是基于哈希表的Map实现。键是哈希表结构,可以保证键的唯一性。 HashMap 继承于AbstractMap,实现了Map接口。 HashMap的设计初衷主要是为了解决键值(key-value)对应的关联的,HashMap的优势是可以很快的根据键(key)找到该键对应的值(value)。注意一下,HashMap是一种无序的存储结构。遍历1.案例1 键String类型,值S...原创 2018-08-30 17:59:53 · 10540 阅读 · 3 评论 -
去除ArrayList集合中的重复的元素(字符串对象、自定义对象)
1.创建新集合的思路创建集合创建字符串对象并添加对象到集合创建新集合遍历旧集合,获取集合中的每一个元素。 拿这个元素到新的集合中去找,看有没有:有,不搭理;没有,添加这个元素到新集合。遍历新集合import java.util.ArrayList;import java.util.Iterator;/** * @program: javalearnCode * @d...原创 2018-08-23 11:54:50 · 1936 阅读 · 0 评论 -
List的三个子类:ArrayList、Vector、LinkedList
ArraList是List的子类。删除中多了这个功能: protected void removeRange(int fromIndex, int toIndex) 从这个列表中删除所有索引在 fromIndex (含)和 toIndex之间的元素。 创建并遍历ArrayList集合1.存储字符串对象import java.util.Iterator;import j...原创 2018-08-23 10:49:22 · 300 阅读 · 0 评论 -
类名、抽象类名、接口作为返回值类型
它们都是引用类型。 要知道,抽象类、接口都不能实例化。类名作返回值类型:返回的是该类的对象抽象类名作返回值类型:返回的是该抽象类的子类对象接口名作返回值类型:返回的是该接口的实现类的对象1、类名作返回值class Student { public void study() { System.out.println("Good Good Study,...原创 2018-08-17 18:53:12 · 2387 阅读 · 0 评论 -
类名、抽象类名、接口作为形式参数
它们都是引用类型。 抽象类、接口都不能实例化。类名作形参:需要的是该类的对象 抽象类名作形参:需要的是该抽象类的子类对象 (抽象类多态)接口作形参:需要的是该接口的实现类对象 (接口多态)1、类名作形参class Student { public void study() { System.out.println("Good Good Stud...原创 2018-08-17 18:40:30 · 676 阅读 · 0 评论 -
ConcurrentModificationException并发修改异常
迭代器在遍历元素时,是不能通过集合修改元素的。 因为迭代器是依赖于集合而存在的,集合中若修改了元素,但是迭代器却不知道。解决: 方式一:迭代器迭代元素,迭代器修改元素。 方式二:集合遍历元素,集合修改元素。...原创 2018-08-22 22:09:05 · 164 阅读 · 0 评论 -
接口练习:猫狗案例扩展跳高功能
在“抽象类练习1:猫狗案例”的基础上,猫狗案例加入额外功能:跳高jump() 注意分析:是有的猫会跳高,有的狗会跳高 所以定义一个跳高接口。再定义两个类:跳高猫,继承猫,实现猫的跳高接口;跳高狗,继承狗,实现狗的跳高接口。/*[抽象类]动物 abstract class Animal : 成员变量:姓名、年龄 构造方法 ...原创 2018-08-17 10:05:34 · 1049 阅读 · 0 评论 -
List接口、列表迭代器
List集合的特点有序,可重复。 List继承自Collection。遍历List集合练习: List集合存储字符串并遍历 List集合存储学生对象并遍历 根据上一节Collection的练习,很容易写出来。 List还有一个特有遍历方法:size()和get()结合。import java.util.Iterator;import java.util.List...原创 2018-08-22 21:40:33 · 1630 阅读 · 0 评论 -
java中数组长度、字符串长度、集合大小
数组是arr.length; 字符串是s.length(); 集合是c.size();原创 2018-08-22 11:29:38 · 9036 阅读 · 0 评论 -
包装类、Integer类、String和int类型相互转换
包装类是什么为了对基本数据类型进行更多的操作,更方便的操作,java就针对每一种基本数据类型提供了对应的类类型,称为包装类。 byte——Byte short——Short int——Integer long——Long float——Float double——Double char——Character boolean——BooleanInteger类——基本类型int...原创 2018-08-21 18:36:08 · 2363 阅读 · 0 评论 -
增强for
是for循环的一种。 它简化了数组和集合的遍历。增强for其实是用来替代迭代器的,所以要注意避免出现:并发修改异常。格式:for(元素数据类型 变量:数组或者集合){ 使用变量即可,该变量就是数组或者集合中的元素}使用增强for遍历之前的集合://增强for遍历 for(String s: l){ System.out.p...原创 2018-08-24 17:45:22 · 478 阅读 · 0 评论 -
集合的嵌套遍历
import java.util.ArrayList;import java.util.Iterator;/** * @program: javalearnCode * @description: 集合的嵌套遍历 * @author: chen * @create: 2018-08-24 16:44 **/public class Demo1 { public stati...原创 2018-08-24 17:49:53 · 570 阅读 · 0 评论 -
IO流总结
IO流 |--字节流 |--字节输入流 InputStream int read():一次读取一个字节 int read(byte[] bys):一次读取一个字节数组 |--FileInputStream |--BufferedInputStream |--字节输出流 OutputStream void write(int ...原创 2018-09-21 11:27:55 · 110 阅读 · 0 评论 -
缓冲输出流BufferedOutputStream、缓冲输出流BufferedInputStream
缓冲流即字节缓冲流,数据类型为字节流缓冲区+字节流加了缓冲区,为了高效。缓冲输出流BufferedOutputStream 写数据import java.io.BufferedOutputStream;import java.io.FileOutputStream;import java.io.IOException;/** * @program: javalearnCode...原创 2018-09-21 10:53:18 · 1204 阅读 · 0 评论 -
IO流、文件字节输出流FileOutputStream、文件字节输入流FileInputStream
IO流IO流分为:输出流——写出数据输入流——读取数据数据类型不同,有:字节流和字符流。字节流的抽象基类:InputStream、OutputStream字符流的抽象基类:Reader、Writer字节输出流OutputStream如,写出数据到文件,是文件字节输出流FileOutputStream(输出流对象指向文件)。字节输出流OutputStream操作步骤 1.创...原创 2018-09-20 16:51:48 · 505 阅读 · 0 评论 -
内部类、匿名内部类
内部类把类定义在其他类的内部,这个类就叫内部类。内部类分为:成员内部类、局部内部类。内部类访问特点:内部类可以直接访问外部类的成员,包括私有。外部类访问内部类的成员,必须创建对象。局部内部类局部内部类是定义在一个方法或者一个作用域里面的类。public class Outer { public void function() { //局部内部类Inner...原创 2018-09-18 19:02:57 · 152 阅读 · 0 评论 -
多线程
进程看任务管理器,发现只有运行的程序才会出现进程。进程就是正在运行的程序。进程是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。 多进程:比如,一边玩游戏,一边听音乐。就是多进程。cpu在一个时间段内执行多个任务(音乐进程和游戏进程)。注意不是同时进行的,而是cpu在高效切换着,让我们觉得是在同时进行的。提高了cpu的使用率。线程在同一个进程内又可以执行多...原创 2018-09-07 18:15:02 · 118 阅读 · 0 评论 -
线程池
文章目录线程池引入Executor、ExecutorService、Executors、ThreadPoolExecutor使用线程池线程池引入之前我们是需要一个线程就去创建一个线程,实现起来简单,但是当需要并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样由于频繁创建和销毁线程需要时间,就大大降低了系统的效率。有没有一种办法可以使得线程复用,就是执行完一个任务,线程并...原创 2018-09-18 11:02:49 · 110 阅读 · 0 评论 -
多线程之等待唤醒机制(wait-notify)
wait()、notify()、notifyAll()方法Object类里面提供了这几个方法: wait():让当前线程处于等待(阻塞状态),直到其他线程调用此对象的notify()或notifyAll()方法(进入就绪状态)。 notify():唤醒在此对象监视器上等待的单个线程。 notifyAll():唤醒在此对象监视器上等待的所有线程。 每个方法都有finnal关键字修饰。...原创 2018-09-17 21:52:32 · 1064 阅读 · 0 评论 -
异常
异常的体系Throwable |--Error 严重问题,我们不处理。 |--Exception |--RuntimeException 运行期异常,一般是代码有问题,我们需要修正代码。 |--非RuntimeException 编译期异常,必须处理的,否则程...原创 2018-09-07 10:33:58 · 85 阅读 · 0 评论 -
File 文件
创建文件import java.io.File;import java.io.IOException;/** * @program: javalearnCode * @description: 创建文件 * @author: chen * @create: 2018-09-06 10:25 **/public class FileDemo { public st...原创 2018-09-06 17:24:22 · 227 阅读 · 0 评论 -
HashMap集合嵌套ArrayList集合、ArrayList集合嵌套HashMap集合
HashMap集合嵌套ArrayList集合import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.Set;/** * @program: javalearnCode * @description: HashMap集合嵌套ArrayList集合。...原创 2018-09-03 17:47:19 · 1845 阅读 · 0 评论 -
统计字符串中每个字符的出现次数
若map中有该字符,则次数(该key所对应的value++)注意,还要重新存储该键和值。//import java.util.HashMap;import java.util.Scanner;import java.util.Set;import java.util.TreeMap;/** * @program: javalearnCode * @description: 统计字...原创 2018-09-03 11:11:22 · 513 阅读 · 0 评论 -
多线程应用:模拟多窗口售票 线程安全 同步synchronized
某电影院目前正在上映贺岁大片,共有100张票,而它有3个售票窗口售票,设计一个程序模拟该电影院售票。//SaleTickets.javapublic class SaleTickets implements Runnable { public SaleTickets(){} private int ticketsNumbers=100; private int p...原创 2018-09-11 17:10:02 · 863 阅读 · 0 评论 -
Map、遍历Map集合
MapInterface Map&lt;K,V&gt;将键映射到值的对象。 一个映射不能包含重复的键。键唯一。 每个键最多只能映射到一个值。Map和Collection的区别Map集合的数据结构针对键有效,跟值无关。 Collection集合的数据结构针对元素有效。Map集合的功能1:添加功能 V put(K key,V value):添加元素。 ...原创 2018-08-30 11:53:47 · 234 阅读 · 0 评论 -
TreeSet
TreeSet能够对元素按照某种规则进行排序。同时也保证元素的唯一。两种排序方式:自然排序比较器排序TreeSet集合特点:排序和唯一。#原创 2018-08-29 11:57:29 · 3371 阅读 · 0 评论 -
接口interface、抽象类和接口的区别
接口在软件工程中,接口泛指供别人调用的函数或方法。从这里可以体会到java设计语言的初衷,它是对行为的抽象。 这个行为:事物功能的拓展, 延伸的附加行为 形式:[public] interface 接口名{}门和警报的例子门都有open()和close()这两个动作,这是门本身固有的行为特性。假如我们将门定义为抽象类:abstract class Door{ ...原创 2018-08-16 22:33:19 · 324 阅读 · 0 评论 -
Object类的一些方法
Object类原创 2018-08-18 21:51:34 · 551 阅读 · 0 评论 -
练习:猫狗案例多态版
/* 猫狗案例多态版 测试结果: 猫吃鱼 猫玩捉迷藏 狗吃肉 狗看门*///动物类class Animal{ public Animal(){} public void eat(){ System.out.println("吃饭"); }}//狗类 继承动物cl...原创 2018-08-14 18:30:26 · 1403 阅读 · 0 评论 -
成员变量和局部变量的区别
A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 ...原创 2018-08-11 11:19:19 · 165 阅读 · 0 评论 -
构造方法
构造方法 给对象的数据进行初始化格式: A:方法名与类名相同 B:没有返回值类型,连void都没有 C:没有具体的返回值注意事项 1. 如果我们没有给出构造方法,系统将自动提供一个无参构造方法。 2. 如果我们给出了构造方法,系统将不再提供默认的无参构造方法。 注意:这个时候,如果...原创 2018-08-11 10:47:55 · 127 阅读 · 0 评论 -
this关键字
1.代表当前类的引用对象(就代表当前类的一个对象)。 2.方法被哪个对象调用,this就代表那个对象。 3.什么时候使用this? 常,解决局部变量隐藏成员变量的问题class Phone{ //成员变量 private String brand; private int price; //成员方法 public void setBrand(S...原创 2018-08-11 10:35:52 · 107 阅读 · 0 评论