自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 HTML简单学习

HTML<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body></html>head 标签掌握标签: <title></title>网页标题标签 告诉浏览器使用什么标题<meta charset="utf

2020-05-17 20:13:04 306

原创 单例模式

创建者模式:单例模式(饿汉式/懒汉式/双重检测锁/静态内部类实现方法/枚举方式)双重检测锁:有问题 。不去了解饿汉式/** * Copyright (C), 2020-2020 * 描述:〈饿汉式〉 类初始化时候立即加载(没有延时加载的优势 类一创建就加载对象), 由于加载类时候是线程安全的 方法没有同步 ,调用效率高。 * * @author Administrator * @create 2020-5-17 */public class Single { //类初始化时候立即

2020-05-17 11:18:43 145

原创 多线程2—线程状态

线程状态(new /runable /blocked/waiting/Timed_waiting/terminated)new Thread()创建线程对象 进入新生状态新生状态->start()(start方法 /阻塞事件解除/yield 让出cpu调度/jvm本身切换到其他线程会进入就绪状态)就绪状态–>获得执行权运行状态–》run方法结束进入死亡状态死亡状态阻塞状态 (当调用sleep()/wait()/join()/IO流,同步锁定的时候,线程进入阻塞状态 阻塞事件解除后,

2020-05-10 11:07:55 149

原创 Lambda表达式

JDK8 之后Lambda表达式 多用于匿名内部类 并且类中只有一个方法的情况new Thread(new Runable(){ public void run(){ System.out.println("ccc")}}).start()简写:new Thread(()->{System.out.println("ccc")...

2020-05-08 17:22:01 99

原创 静态代理

静态代理真实角色代理角色//静态代理interface xx{ public void yy();}//真实对象class x1 implements xx{ public void yy(){}}//代理对象class x implements xx{ private xx t; public x(xx t){ th...

2020-05-08 17:08:12 91

原创 多线程

1. 创建多线程方式一:创建一个类继承Thread类 重写run 方法class MyThread extends Thread{public void run(){}}创建类对象,MyThread my=new MyThread();my.start();创建多线程方式二创建一个类实现Runable接口 并重写run方法class MyRunable implemen...

2020-05-08 15:44:30 65

原创 网络编程1

定位:Ip定位电脑Port端口定位软件Url 统一资源定位符Ip地址:IPv4:32位以十进制表示如192.168.0.1Ipv6:128位 16个字节 写成8个16位的无符号整数InetAddress类:用于区分电脑InetAddress ia=InetAddress.getLocalHost();//获取本机的Ip配置:ia.getLocalHost(); 返回地址如192...

2020-04-26 22:02:23 143

原创 hashMap

Map接口 :用来存储键值对常用的实现类有:HashMap、TreeMap 、HashTable、PropertiesHashMap<key, value> hashMap常用方法 Map m = new HashMap<>(); m.put(1,"lisi"); m.put(2,"zhangsan"); //成对添加元素 m.size() m.i...

2020-04-26 19:52:05 97

原创 Collection接口和List

Collection 接口子接口list 和 SetCollection<> c=new ArrayList<>()常用方法:c.size //c.isEmpty //判断是否为空c.add("xxx");//添加元素System.out.println(c);// [xxx]c.remove("xxx");//移除对象c.toArray();/...

2020-04-25 10:05:32 97

原创 IO流2

文件流:FileInputStream FileOutputStream FileReader FileWriter append()方法 write.append("xsx").append("xxase").append("xsdf);连续写字...

2020-04-25 09:03:23 87

原创 IO流1

从处理数据分为字符流 InputStream / outputStream字节流 reader / writer从输入流向分为输入流、 InputStream / reader输出流:outputStream / writer从功能上来看节点流名字中包含 File、 byteAttray处理流 :Buffered / Object 等等流四个抽象类:字...

2020-04-22 21:09:48 66

原创 IO类

File:名称分隔符 \ 或者 / \\第一个\表示的是转意字符路径:String path =“D:\\JAVA\\a.txt” 、\\有时候需要转义 可以用file.separator来表示\\或者 String path=“D:/JAVA/A.TXT”建议用后者创建file对象File file =new File(path); file.length;...

2020-04-22 16:55:44 79

原创 idea设置默认项目存储路径

第一次设置项目的地址 以后项目会默认

2020-04-04 10:03:30 47359 9

转载 十大经典排序

冒泡排序个人理解:拿相邻的元素进行比较 将较大值进行交换 通过一次完整的循环 得到该轮的最大值(小值)放在最后一位 通过多轮比较得出最终排序结果 for (var i = 0; i < len - 1; i++) { for (var j = 0; j < len - 1 - i; j++) { if (arr[j] > a...

2020-04-01 16:32:13 80

转载 Win10 下intellij idea 的Terminal不能用的问题

电脑安装了win10,然后就想使用上新的cmd控制台属性启用cmd新特性方法:首先打开控制台在标题处右键选择属性->选项->不勾选使用旧版本控制台即可然后可以启用Ctrl+C Ctrl+V 的复制粘贴快捷方式了。后来发现在idea下想打开终端(Alt+F12)时一直不行,估计是设置了新特性的问题导致的。idea下的控制台设置路径:Tools -> Terminal ...

2020-03-31 19:13:54 2025 1

转载 Node npm vuecli

安装 nodenode -v npm -v如果成功 由于npm可能比较卡 建议切换淘宝源安装cnpm 淘宝源npm install -g cnpm --registry=https://registry.npm.taobao.org测试cnpmcnpm -v安装vue脚手架cnpm install -g vue-cli测试 vue -V 注意此时V是大写使用vue 构建项...

2020-03-31 18:55:57 85

原创 增删该查2

对于“增、删、改(更新)”这类对表内容变换的操作,需先调用getWritableDatabase()获得一个可写数据库对象,在执行的时候调用通用的execSQL(String sql)或或对应的操作API方法:对“查”,查询数据库不能使用execSQL方法insert()、delete()、update()query()或rawQuery() // 创建ContentValues对象 ...

2019-11-30 14:39:17 106

原创 SQLiteOpenHelper操作数据库

一:新建一个类继承SQLiteOpen

2019-11-30 14:16:01 532

转载 Android几种解析XML方式的比较

一、使用SAX解析XMLSAX(Simple API for XML) 使用流式处理的方式,它并不记录所读内容的相关信息。它是一种以事件为驱动的XML API,解析速度快,占用内存少。使用回调函数来实现。 缺点是不能倒退。二、使用DOM解析XMLDOM(Document Object Model) 是一种用于XML文档的对象模型,可用于直接访问XML文档的各个部分。它是一次性全部将内容加载在...

2019-11-18 20:15:37 145

原创 生成xml的方式

一、StringBuffere 方式利用append 一个一个组拼二、XmlSerializerXmlSerializer xmlSerializer = Xml.newSerializer();xmlSerializer.setOutput(OutputStream out,“UTF-8”);xmlSerializer.startDocument(“UTF-8”,true);xmlS...

2019-11-18 19:29:13 88

转载 SharedPreference

我们在开发软件的时候,常需要向用户提供软件参数设置功能,例如我们常用的微信,用户可以设置是否允许陌生人添加自己为好友.对于软件配置参数的保存,如果是在window下通常我们会采用ini文件进行保存.如果是J2EE下面,我们会采用properties属性文件或者xml进行保存.在我们的Android应用中又适合采用什么方式保存软件配置参数呢?Android平台给我们提供了一个SharedPrefer...

2019-11-17 19:13:56 133

原创 外部存储

判断sdk是否可用 if ((Environment.MEDIA_MOUNTED).equals(Environment.getExternalStorageState())){ Toast.makeText(getApplicationContext(),"sdk可用" ,Toast.LENGTH_LONG).show(); ...

2019-11-17 18:23:46 241

原创 context.getfileDir和 context.openFileOutput()保存路径

都是保存在内部存储中前者保存在app的cache缓存中后者保存在app的files文件夹中

2019-11-16 20:17:17 904

转载 BufferedInputStream缓冲IO以及InputStream中的read(byte[] b)

InputStreamInputStream是所有输入流的顶级类,当然只定义,不实现,具体的由子类去实现,如AudioInputStream, ByteArrayInputStream, FileInputStream等。指明了InputStream的read(byte[],int off,int len)的实现方式,就是简单的调用read()方法而已,而read()方法是一次只读取一个字节,...

2019-11-16 18:41:49 997

转载 File类

通过给定的父抽象路径名和子路径名字符串创建一个新的File实例。File(File parent, String child);通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例。File(String pathname)根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。File(String parent, String child...

2019-11-16 17:46:23 63

转载 常用的IO输入输出流

字节流:FileInputStream,FileOutputStream ; BufferedInputStream,BufferedOutputStream ;字符流:FileReader,FileWriter ; BufferedReader,BufferedWriterInputStream类InputStream抽象类是表示字节输入流的所有类的超类,它以字节为单位从数据源中读...

2019-11-16 12:27:52 119

转载 安卓文件存储路径

Android中内部存储,外部存储的概念(1)内部存储概念:注意内部存储不是内存。内部存储位于系统中很特殊的一个位置,如果你想将文件存储于内部存储中,那么文件默认只能被你的应用访问到,且一个应用所创建的所有文件都在和应用包名相同的目录下。也就是说应用创建于内部存储的文件,与这个应用是关联起来的。当一个应用卸载之后,内部存储中的这些文件也被删除。从技术上来讲如果你在创建内部存储文件的时候将文件属...

2019-11-13 19:48:31 1052

转载 权限

访问登记属性 android.permission.ACCESS_CHECKIN_PROPERTIES ,读取或写入登记check-in数据库属性表的权限获取错略位置 android.permission.ACCESS_COARSE_LOCATION,通过WiFi或移动基站的方式获取用户错略的经纬度信息,定位精度大概误差在30~1500米获取精确位置 android.permission.AC...

2019-11-12 20:16:55 97

原创 Android中本地存储数据的四种方式

Android常用的数据存储方式File存储SharedPreferences存储SQLite轻量型数据库ContentProvider 四大组件之一

2019-11-12 20:05:06 713

转载 TextUtils 工具类

TextUtils类首先看一下构造方法,发现其构造方法是私有的,不能进行new来创建。一般的工具类,都是提供一些单一的方法,一般方法都使用static进行修饰,所以new来创建是没有意义的。这也是一般的工具类的写法。getChars(CharSequence s, int start, int end, char[] dest, int destoff){}indexOf(CharSeque...

2019-11-12 19:50:06 674

转载 Dialog使用总结

Dialog分三个区域TitleContent area:不能同时放message和listAction buttons:最多三个创建AlertDialog.Builder对象 AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());AlertDialog.Builder里面的方法setTitle()...

2019-11-12 19:26:36 160

转载 在Android 应用开发过程中,常用监听事件如下:

1.Button(按钮)的监听事件:OnClickListener 接口 onClick(View v)接口方法;2.SeekBar(进度条)的监听事件:OnSeekBarChangedListener接口,①onProgressChanged(SeekBar seekBar, int progress, boolean fromUser);②onStartTrackingTouch(See...

2019-11-12 19:17:46 403

转载 Context详解

Context概述类位置:android.content.Context类声明:public abstract class Context extends Object //直接继承java.lang.Object类直接子类:ContextWrapper和MockContextContextWrapper:代理执行Context,将其所有调用简单地委托给另一个Context。...

2019-11-11 20:31:30 569

转载 TypedArray类获取属性

AttributeSetAttributeSet是xml文件中元素属性的一个集合。其中提供了各种Api,供我们从已编译好的xml文件获取属性值,如getAttributeIntValue,getAttributeBooleanValue,getAttributeFloatValue等,会返回对应类型的属性值,传入的参数一般有两种形式,如下:getAttributeXXXValue(int in...

2019-11-11 19:44:30 827

转载 Android开发 View的平移、缩放、旋转以及位置、坐标系

Android开发中,经常会接触到自定义View,而与View绘制相关的一组组方法很容易让人混淆……1、移动View内容的相关变量和方法 (注意:是移动View所包含的内容,而非View本身)View相关成员变量//View的内容相对于View在水平方向上的偏移量,以像素为单位 //当mScrollX为正数时,内容相对于View从右向左移动,反之则向从左向右移动 protected ...

2019-11-10 19:36:31 1366

原创 自定义View

View绘制流程 View的绘制基本由measure()、layout()、draw()这个三个函数完成测量: onMeasure(): 测量自己的大小,为正式布局提供建议 布局:onLayout(): 使用layout()函数对所有子控件布局 绘制:onDraw(): 根据布局的位置绘图不管是自定义View还是系统提供的TextView这些,它们都必须放置在Linear...

2019-11-10 19:04:01 63

原创 TypedValue安卓自带的单位转换

在xml布局文件中,我们既可以设置px,也可以设置dp(或者dip)。一般情况下,我们都会选择使用dp,这样可以保证不同屏幕分辨率的机器上布局一致。但是在代码中,如何处理呢?很多控件的方法中都只提供了设置px的方法,例如setPadding,并没有提供设置dp的方法。这个时候,如果需要设置dp的话,就要将dp转换成px了————————————————将某单位转化为像素public stat...

2019-11-10 16:13:02 228

原创 WindowManager获取宽和高

实现implements ViewManager接口内部类WindowManager.LayoutParams自有方法abstract Display getDefaultDisplay()对应Display的用法void getCurrentSizeRange(Point outSmallestSize, Point outLargestSize)int getDisplayId...

2019-11-10 15:39:04 764

转载 getSystemService系统服务

传入的Name | 返回的对象 | 说明WINDOW_SERVICE WindowManager 管理打开的窗口程序LAYOUT_INFLATER_SERVICE LayoutInflater ...

2019-11-10 15:06:52 139

原创 抽屉式公告 SlidingDrawer过时

SlingdingDrawerslidingDrawer影藏的文件用content属性,显示的手柄用handler属性 <SlidingDrawer android:layout_width="match_parent" android:layout_height="match_parent" android:layout_align...

2019-11-10 14:11:01 378

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除