- 博客(22)
- 收藏
- 关注
原创 Java排序算法之交换排序
一、冒泡排序1、算法思想:依次比较相邻的两个数,较小数放前面,较大数放后面,直到最大数放在最后, 然后重复操作,最后排序为升序。 第一层循环为重复的次数,循环次数为array.length-1 第二次循环为依次比较相邻的数,循环次数为array.length-1-i 2、原理图 3、Java代码实现// 1、冒泡排序 public static void puppleSort(i
2017-07-27 13:01:25
718
原创 JDBC三种编译
JDBC中有三个主要用于编译的API,分别是Statement接口、PrepareStatement接口以及CallableStatement接口。1、Statement接口编译 手动连接数据库,创建一个表package com.wk.jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQ
2017-07-27 10:16:54
538
原创 JDBC技术
一、JDBC1、jdbcsun公司设计的一套调用java语言操作不同数据库的接口2、使用jdbc发送sql前提(1)数据库的ip地址 (2)端口 (3)数据库用户名 (4)密码3、连接数据库第一种方式: (1)创建一个驱动程序对象 Driver driver = new com.mysql.jdbc.Driver(); (2)设置用户名的密码 使用Property对象的setPrope
2017-07-26 23:37:48
458
原创 Mysql数据库笔记
数据操作一、SQL将SQL的基本操作根据操作对象进行分类:库操作,表操作(字段),数据操作。二、库操作对数据库的增删改查(CRUD) 1、新增数据库 create database 数据库名 【库选项】; 库选项:用来约束数据库,分为两个选项 字符集设定:charset/character set 具体字符集(数据存储的编码方式):GBK、UTF8 校对集设定:collate 具体
2017-07-26 22:46:11
533
原创 Java排序算法之插入排序
插入排序分为直接插入排序、折半插入排序、希尔排序,其中折半插入排序和希尔排序是优化后的插入排序,下面具体介绍着三种排序。 一、直接插入排序 1、算法思想 从序列的第i个元素为临界点,将序列分为无序序列和有序序列,即0~i-1为无序,i~n为有序。然后将i下标所对应的值复制一个备份为temp,然后用这个备份从后往前依次和无序序列中的元素进行比较,直到遇见一个不大于temp的元素为止,然后从该索引处元
2017-07-26 19:11:41
239
原创 Java内存管理
内存分配Java中的内存分配都是由Java虚拟机来管理的,那么虚拟机是如何管理的呢?首先先了解一下Java虚拟机中将运行时的数据分为几个区域进行管理.一 、运行数据管理Java虚拟机在运行Java程序时将运行时加载的数据分为几个区域,分别是方法区,虚拟机栈区,本地方法栈,堆以及程序计数器.1.程序计数器 (1)程序计数器是一块较小的内存空间,可以被看作是当前线程所执行的字节码的行号指示器.而字节码
2017-07-05 12:47:24
242
原创 XML语言
一、XML概念 可扩展标记语言(英文:eXtensible Markup Language,缩写:XML),是一种标记语言。标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用像XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从标准通用标记语言(SGML)中简化修改出来的
2017-07-01 19:03:51
265
原创 java网络编程之UDP、TCP协议
在不同计算机之间进行通信时,需要具备拥有唯一标识的ip地址以及端口号,每个ip地址对应一台主机,每台主机上有65536个端口号,每个端口号能且只能承载一个进程的运行。要进行网络通信时,就要了解一个新的概念—socket(套接字),用于描述IP地址和端口号,是一个通信链的句柄。应用程序通常使用套接字来向网络发出请求或应答网络请求,也不易实现不同虚拟机或计算机之间的通信。socket的英文含义原指“插座
2017-05-22 10:50:56
227
原创 集合之Map
已实现的子类: 1、HashMap 底层数据结构是哈希表,可以存放null键和null值,该集合是线程不同步的,效率高,jdk1.2出现。 2、HashTable 底层数据结构是哈希表,不可以存放null键和null值,该集合是线程同步的,效率低,jdk1.0出现。 3、TreeMap 底层是二叉树数据结构,线程不同步,可以用于给Map中的键进行排序。Map中取元素的方式: 1、Map
2017-04-30 18:39:22
290
原创 初识HTML/CSS之CSS篇
CSS 是 Cascading Style Sheet 的缩写。译作「层叠样式表单」。是用于(增强)控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。CSS有这么几个优势: 内容与表现分离; 网页的表现统一,容易修改; 丰富的样式,使页面布局更加灵活; 减少网页的代码量,增加网页的浏览速度,节省网络带宽; 运用独立于页面的CSS,有利于网页被搜索引擎收录;1、选择器,优先级依次升
2017-04-29 15:36:13
287
原创 初识HTML/CSS之HTML篇
HTML是一种超文本标记语言(HyperText Markup Language),是一种用于创建网页的标准标记语言。可以使用 HTML 来建立自己的 WEB 站点,HTML 运行在浏览器上,由浏览器来解析。首先是HTML的基本结构,head标签里面用于设置标题栏(title)以及插入一些脚本(script),样式文件(CSS)和meta信息。body标签存放HTML的主体内容。<!DOCTYPE
2017-04-29 09:35:20
534
1
原创 集合之HashSet
HashSet是实现Collection接口的子接口Set的一个子类,其使用的底层数据结构是哈希表,当存储元素时,该集合使用哈希算法来计算出一个哈希值作为元素存在哈希表中的地址,由于存入的元素是不可重复的,所以哈希表保证了每个对象元素的唯一性,这不仅仅体现在拥有唯一的地址,当哈希值相同时,集合查重的方式变成调用当前元素的equals方法来检测是否为相同的对象,不相同则在改地址下存入新的对象,否则被
2017-04-26 00:09:45
275
原创 多线程中的生产者和消费者模式
当一个进程中存在多个线程时,且此时有可能对同一资源进行访问,那么此时可能会发生安全问题,因此在访问之前需要将这些资源放在同步代码块中或同步方法中,通过synchronized关键字声明,此时只能存在一个线程并且该线程在获取到对应的锁后才能对共享资源操作,完成之后其他线程才能获得该锁进而操作共享资源。这些是多线程在处理同一数据时的一些基本操作,那么此时若有多个线程要对同一资源操作,但实现不同的功能。...
2017-04-24 13:36:34
498
原创 多线程中的生产者和消费者模式
当一个进程中存在多个线程时,且此时有可能对同一资源进行访问,那么此时可能会发生安全问题,因此在访问之前需要将这些资源放在同步代码块中或同步方法中,通过synchronized关键字声明,此时只能存在一个线程并且该线程在获取到对应的锁后才能对共享资源操作,完成之后其他线程才能获得该锁进而操作共享资源。这些是多线程在处理同一数据时的一些基本操作,那么此时若有多个线程要对同一资源操作,但实现不同的功
2017-04-18 16:54:35
442
原创 自定义控件
当Android系统提供的控件不能满足我们的需求时,这时可以通过自定义一个控件来实现想要的效果。这里有三种方式: (1)继承其他控件类(Button、EidtText等); (2)组合方式。当前控件类从容器类(ViewGroup,一般使用LinearLayout等布局)继承,并将若干个控件添加到当前的容器类中; (3)绘制控件。控件类直接继承View,并在onDraw()方法中绘制控件,例如
2017-04-09 15:45:31
251
原创 使用浏览器访问tomcat服务器下的文件
首先简单介绍一下tomcat,tomcat是一个轻量级web服务器,一般用于响应一个HTML请求,实际上是运行jsp和servlet页面,在这之前要对运行tomcat的机器上要进行正确的配置,不过其只适合于中小型系统或访问用户不是很多的场合,当用户通过浏览器输入配置好的URL后便可访问tomcat下的资源文件。由于本人在编写一个android APP时需要使用HTTP协议下载几个文件,所以直接在个人
2017-03-31 13:48:29
23068
4
原创 Android面试题笔记(二)
1、Fragment生命周期?Fragment状态保存? 答:Fragment与Activity生命周期类似,只是多了几个方法。下面是对Fragment生命周期的测试package com.example.asus.fragment;import android.app.Fragment;import android.content.Context;import android.os
2017-03-19 15:34:08
335
原创 Android面试题笔记(一)
1、什么是ANR以及如何避免它? 答:在android中,由活动管理器(ActivityManager)和窗口管理器(WindowManager)来监听系统服务的响应,如果一个应用程序出现长时间无响应输入事件的状态,系统会弹出一个对话框提示应用程序无响应,提示用户是否继续等待还是退出,这种情况通常称为ANR(Application Not Responsing)。 一般情况下,应用程序无响应的时间
2017-03-16 12:17:36
581
原创 利用广播机制实现强制下线
在一些应用软件上我们经常会遇到诸如“您的XX账号在别处登录,请您重新登陆!”的问题,那么这是如何实现的呢?下面正是一个利用广播机制来实现强制下线的例子。一、任务1、首先创建一个ActivityCollector类用来管理活动,在这个类中添加相应的方法 2、然后创建一个BaseActivity类作为作为父类,在子类中覆盖该类的方法 3、设计一个登陆界面,首先创建登录界面的布局文件login.xml
2016-12-12 19:07:55
502
原创 编写一个简单的聊天界面
目前手机上很多聊天app都有一个好看的聊天界面,那么如何用android来编写一个这样的聊天界面呢?首先应该清楚这个聊天界面应该包含什么内容,当然是显示的消息以及发送消息的编辑框等等,一个好的布局才能有一个漂亮的界面。大概的步骤如下:(1)先定义一个Msg消息类,用来声明消息的类型(发出的消息和收到的消息)以及存储消息的内容。 (2)然后编写一个主界面的xml文件,在一个线性布局中用ListVie
2016-12-10 18:09:10
3487
原创 在ListView中如何使用SimpleAdapter
SimpleAdapter是一个简单的适配器,主要作用就是用户自定义一个MXL文件来存储数据,然后将这些数据放在List中的Map集合里,AarryList里可以存在多个map,而每个map自成一行。在android中有一个组件为AdapterView,其作用是显示一些“列表项”而要显示这些“列表项”就要用到Adapter来提供组件,Adapter是一个接口,它派生了两个子接口分别为ListAdap
2016-11-29 14:37:56
658
原创 hashCode()方法
hashCode是jdk根据对象的地址或者字符串或者数字算出来的int类型的数值 详细了解请 参考 public inthashCode()返回该对象的哈希码值。支持此方法是为了提高哈希表(例如 java.util.Hashtable 提供的哈希表)的性能。在java集合中的collection中分为Set和List两个接口,分别有实现该接口的类,其中Set接口常用实现的两个类是HashSet和Tr
2016-11-08 17:10:54
290
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人