
java
文章平均质量分 88
ameyume
蓝蓝的天,白云朵朵。
展开
-
Android Q中外部存储盘路径正则表达式的理解
AndroidQ的ModernMediaScanner.java文件中以下两个正则表达式,具体该怎么解读? private static final Pattern PATTERN_VISIBLE = Pattern.compile( "(?i)^/storage/[^/]+(?:/[0-9]+)?(?:/Android/sandbox/([^/]+))?$"...原创 2019-10-14 11:42:09 · 1488 阅读 · 0 评论 -
百度MP3音乐API接口及应用
当你在百度去搜索一首歌时,你会发现有种更简单的方法,嘿嘿,安宁ヤ太天真告诉你个秘密,百度有个不公开的APIhttp://box.zhangmen.baidu.com/x?op=12&count=1&title=大约在冬季$$齐秦$$$$用上面的地址,红色部分改成歌名与作者名,然后百度就会给你一个XML:Java代码 1http://song.feifa-radio.com/Q/20050701/jingxuan/YjI$.Wma1.Wma249684转载 2011-05-13 15:25:00 · 2452 阅读 · 0 评论 -
java中父类子类的继承与函数重写
<br />测试代码如下:<br />/** * Father class */class Father { public int count; public Father() { count = 1; System.out.println("Father is called."); } public int getCount() { System.out.println("Father getCount()"); return count;原创 2011-03-29 21:30:00 · 7016 阅读 · 0 评论 -
Java中static修饰一段代码,实现加载时运行的用法
package com.min.test;class AA{ // 加载时运行,与instance无关 static{ System.out.println("static block "); } AA() { System.out.println("AA()"); }}public class JavaTest { /** * @param args */ public static原创 2011-04-18 13:48:00 · 2490 阅读 · 0 评论 -
java中BigDecimal类的精确四则运算工具类Arith
在《Effective Java》这本书中也提到这个原则,float和double只能用来做科学计算或者是工程计算,在商业计算中我们要用java.math.BigDecimal使用BigDecimal并且一定要用String来够造。 但是想像一下吧,如果我们要做一个加法运算,需要先将两个浮点数转为String,然后够造成BigDecimal,在其中一个上调用add方法,传入另一个作为参原创 2011-06-11 22:54:00 · 5472 阅读 · 0 评论 -
空字符串可以作为HashMap的key
在java中,空字符串可以作为以String类型为key的HashMap的key,示例如下: public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("----->"); HashMap mFileCache = new HashMap();原创 2013-04-18 09:32:14 · 8970 阅读 · 0 评论 -
jdk 1.6 官方下载地址
在oracle官方网站默认下载的jdk是最新的,目前正式版是1.7,1.8beta版也已经放出。但有些项目要求是1.6的jdk,费了九牛二虎之力终于找到了1.6的官方版本,链接如下:http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.htm原创 2013-08-19 20:25:23 · 56381 阅读 · 2 评论 -
Java HashSet和LinkedHashSet的用法
类HashSet和LinkedHashSet都是接口Set的实现,两者都不能保存重复的数据。主要区别是HashSet不保证集合中元素的顺序,即不能保证迭代的顺序与插入的顺序一致。而LinkedHashSet按照元素插入的顺序进行迭代,即迭代输出的顺序与插入的顺序保持一致。以下是HastSet和LinkedHashSet的用法示例:import java.util.Collections原创 2013-12-12 23:28:25 · 36025 阅读 · 3 评论 -
Java 强引用、 软引用、 弱引用、虚引用
转自:http://www.apkbus.com/android-13534-1-1.html1.对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到转载 2014-03-05 16:39:46 · 1769 阅读 · 0 评论 -
整理的Java List Set Map是否有序,元素是否允许重复
整理的Java List Set Map是否有序,元素是否允许重复的说明,如下图:原创 2015-05-16 17:57:35 · 13003 阅读 · 3 评论 -
如何在Android上编写高效的Java代码
转自:http://www.ituring.com.cn/article/177180Java平台一般有三个版本:Java ME(微型版,用于某些手机)、Java SE(标准版,用于台式电脑)、Java EE(企业版,用于服务器端应用)。在谈到Java时,我们通常是指Java SE,因为只有这个版本包含虚拟机和编译器。首先,Java代码会被编译成称为字节码的中间格式。当字节码在目标电脑上运行时,虚转载 2015-05-18 22:53:35 · 11919 阅读 · 0 评论 -
Java中利用DatagramPacket与DatagramSocket进行通讯的示例
对以下demo进行了扩展,增了消息循环和等待。 Java中的DatagramPacket与DatagramSocket的初步扩展的代码如下:1.接收端工程代码:由于接收端的控制台log会被发送端的log冲掉,所以把log写到文件中。package com.ameyume.receiver;import java.io.File;import java.io.FileNotFoundExcep原创 2017-05-19 12:19:55 · 5923 阅读 · 0 评论 -
java生成大文件的示例
生成NGB的数据文件的方法,N是自然数,对应不同的文件大小。1.生成文件的方法private static void writeFile(int N) { if (N < 1) { System.out.println("writeFile please input one integer greater than 0"); ...原创 2019-02-21 09:41:18 · 3012 阅读 · 0 评论 -
《码出高效Java开发手册》学习之线程同步volatile
volatile的英文本义是“挥发、不稳定的”,延伸意义为敏感的。当使用volatile修饰变量时,意味着任何对此变量的操作都会在内存中进行,不会产生副本,以保证共享变量的可见性,局部阻止了指令重排的发生。volatile解决的是多线程共享变量的可见性问题,类似于synchronized,但不具备synchronized的互斥性。所以对volatile变量的操作并非都具有原子性,这是一个容易犯...原创 2019-03-10 17:33:35 · 566 阅读 · 0 评论 -
JAVA的Collections类中shuffle的用法
<br />就是随机打乱原来的顺序,和洗牌一样。如:<br />// ShuffleTest.javaimport java.util.*;public class ShuffleTest { public static void main(String[] args) { List<Integer> list = new ArrayList<Integer>(); for (int i = 0; i < 10; i++)原创 2011-03-27 20:26:00 · 68934 阅读 · 5 评论 -
try ... catch中Throw异常后的执行顺序
在Try ... Catch代码中, Throw异常后,throw后面的代码不再执行,直接执行Catch处的代码,并且Finally处的代码也会执行。如果没有Catch语句,或者有Catch,但不符合异常处理的条件,则直接跳转到调用此代码的位置;如果还是没有catch,则继续回调,直到被处理或者回到最初的位置。原创 2011-03-21 10:37:00 · 15898 阅读 · 0 评论 -
多线程的生产者消费实例
/* * 窝头类 */class WoTou { int Id; WoTou(int Id) { this.Id = Id; } public String toString() { return "WoTou " + Id; }}/* * 放窝头的筐,最多放6个窝头 */class SyncStack { int index = 0; WoTou[] arrWT = new WoTou[6]; // 把窝头放原创 2010-06-26 20:01:00 · 1687 阅读 · 0 评论 -
Android实现秒表计时器的程序设计
这是学习Android来第一个完整的Android程序。主要功能是实现秒表计时,功能简介如下:简介:计时器小程序——秒表计时器,程序界面简洁,只有一个时间显示区域和两个图片按钮,一个按钮是开始/暂停,另一个按钮是停止。1.功能:(1)根据用户设置.按0.1秒或1秒为最小单位计时,满60秒进为分钟,最大单位是分钟。默认分钟为两位,超过两位后自动变为三位分钟。(2).显示格式为1.最小计时单位为0.1秒时,显示为:分钟:秒:0.1秒。例如:02:07:52.最小计时单位为1秒时,显示为:分钟:秒。例如:02:0原创 2010-08-08 18:21:00 · 41642 阅读 · 9 评论 -
sleep和wait的区别
sleep和wait的区别<br />关键字: sleep wait <br /> 1、这两个方法来自不同的类分别是Thread和Object<br /> 2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。<br /> 3、wait,notify和notifyAll只能在同步控制方法或者同步控制块里面使用,而sleep可以在<br /> 任何地方使用(使用范围)<br /> synchronized(x){<br /> x.notify转载 2010-06-23 11:13:00 · 1396 阅读 · 0 评论 -
java String的equals,intern方法
<br />JAVA中的equals和==的区别<br /> <br />==比较的是2个对象的地址,而equals比较的是2个对象的内容。<br />显然,当equals为true时,==不一定为true;<br /> <br />基础知识的重要性,希望引起大家的重视,包括自己在内<br />很多困惑和疑问而且均来自于最基础的知识<br />折腾了一阵子又查了查书,终于对 String 这个特殊的对象有了点感悟<br />public class TestString {<br /> public转载 2010-08-16 15:05:00 · 8802 阅读 · 10 评论 -
try catch finally用法
<br />1.catch不到抛出的异常,则结束此函数的执行,抛出异常位置后面的代码都不执行<br />public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub System.out.println("--- main() start --->"); hello(); testS原创 2010-09-03 17:56:00 · 2636 阅读 · 0 评论 -
java内部类,float,ArrayList, HashMap代码示例
<br />import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.Vector;public class Test { private static int m_iNum = 0; private int mCount; public Test() { mCount = 0; m_iNum = 0; } public T原创 2010-09-08 01:13:00 · 3293 阅读 · 1 评论 -
简单的单例模式类
class Singleton{ private static final Singleton st=new Singleton(); private Singleton(); // 私有构造函数,不能通过new来产生一个对象 { } public static Singleton getInstance() // 通过此方法取得类对象,保证了只有一个类对象 { returen st; }}原创 2010-12-15 16:50:00 · 1514 阅读 · 2 评论 -
Java获取系统时间
/** * 获取系统时间 * @return */ public static String getDate(){ Calendar ca = Calendar.getInstance(); int year = ca.get(Calendar.YEAR); // 获取年份 int month = ca.get(Calendar.MONTH); // 获取月份 int day = ca.get(Cal原创 2010-10-29 00:08:00 · 1910 阅读 · 0 评论 -
Java非静态内部类和静态内部类,访问父类的非静态和静态成员变量及成员函数
public class Test { // Not static variable private int mAge = 10; // Static variable private static int mId = 1; // Single instance object private static Test test = null; /** * @param args */ public static void main(String原创 2010-12-22 09:31:00 · 3821 阅读 · 1 评论 -
Year 2038 problem
<br />Another date problem, which results from computing dates into the year 2038 and beyond in 32-bit operating systems. Unix and other C applications represent time as the number of seconds from January 1, 1970. The 32-bit variable (time_t) that stores t原创 2010-12-26 00:00:00 · 2984 阅读 · 0 评论 -
用Iterator实现遍历集合
使用Collection类的Iterator,可以方便的遍历Vector, ArrayList, LinkedList等集合元素,避免通过get()方法遍历时,针对每一种对象单独进行编码。示例: Collection coll = new Vector(); //LinkedList(); //ArrayList(); coll.add("Tody"); coll.add("is"); coll.add("Sunday."); // Output all elements原创 2010-12-26 21:57:00 · 86888 阅读 · 6 评论 -
用函数作为for循环的条件
<br />public class JavaTest { static boolean fun(char c) { System.out.print(c); return true; } /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int i = 0; for (fun('A'); fun('B'原创 2011-01-23 01:24:00 · 4151 阅读 · 0 评论 -
Java中接口里定义的成员变量
<br />在interface里面的变量都是public static final 的。所以你可以这样写:<br />public static final int i=10;<br />或则<br />int i=10;(可以省略掉一部分)<br />注意在声明的时候要给变量赋予初值<br />解释:<br />首先你要弄清接口的含义.接口就是提供一种统一的’协议’,而接口中的属性也属于’协议’中的成员.它们是公共的,静态的,最终的常量.相当于全局常量.<br />抽象类是不’完全’的类,相当于是接口和转载 2011-02-16 23:50:00 · 50063 阅读 · 5 评论 -
JSP连接MS SQL Server2000安装配置
个人在xp sp3系统下安装MS SQL Server2000需要注意的问题:1.需要下载的文件有: (1)SQLserver2000个人版 (2)SQL SERVER2000的jdbc驱动 (3)Microsoft SQL Server 2000 Service Pack 4 简体中文版2.安装时在“服务帐户”对话窗口中,选“使用本地系统帐户”。不建议“使用域用户帐户”,以原创 2009-03-21 14:57:00 · 1509 阅读 · 0 评论