关键词:
import java.math.BigDecimal;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import android.content.Context;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.Signature;
import android.net.ConnectivityManager;
import android.util.Base64;
import android.widget.EditText;
public class Utility
/**
*
* @param edit
* : EditText to validate
* @param validateEmail
* : if true validate email also
* @return true/false
*/
public static boolean notBlank(EditText edit, boolean validateEmail)
if (edit.getText().length() > 0)
if (validateEmail)
if (!Utility.isValidEmail(edit.getText().toString()))
edit.setError("Not valid email!");
return false;
edit.setError(null);
return true;
else
edit.setError("Required " + edit.getHint());
return false;
/**
*
* @param target
* : send email to validate
* @return true/false
*/
public static boolean isValidEmail(CharSequence target)
return android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches();
/**
*
* @param context
* @return true/false Check Internet connection available
*/
public static boolean isOnline(Context context)
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
return (cm == null || cm.getActiveNetworkInfo() == null) ? false : cm
.getActiveNetworkInfo().isConnectedOrConnecting();
public static void getHashKey(Context context)
try
PackageInfo info = context.getPackageManager().getPackageInfo(
"com.something.yourpackage", PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures)
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Logcat.e("KeyHash:",
Base64.encodeToString(md.digest(), Base64.DEFAULT));
catch (NameNotFoundException e)
catch (NoSuchAlgorithmException e)
/**
* Round to certain number of decimals
*
* @param d
* @param decimalPlace
* @return
*/
public static float round(float d, int decimalPlace)
BigDecimal bd = new BigDecimal(Float.toString(d));
bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP);
return bd.floatValue();
/**
* Generate random numbersNeeded from max number
* @param numbersNeeded
* @param max
*/
public static List<Integer> getRandomNumbers(int numbersNeeded,int max)
Random rng = new Random(); // Ideally just create one instance globally
// Note: use LinkedHashSet to maintain insertion order
Set<Integer> generated = new LinkedHashSet<Integer>();
while (generated.size() < numbersNeeded)
Integer next = rng.nextInt(max) + 1;
// As we're adding to a set, this will automatically do a containment check
generated.add(next);
Logcat.e("Random numbers", generated.toString());
List<Integer> randomNumbers = new ArrayList<Integer>();
Iterator<Integer> numberIterator = generated.iterator();
while (numberIterator.hasNext())
randomNumbers.add(numberIterator.next());
Collections.sort(randomNumbers);
return randomNumbers;
一张图解析fastadmin中的弹出窗口的功能(代码片段)
...最常用的功能之一,FastAdmin中默认生成的CRUD中的编辑、添加和删除的弹窗都是基于Layer弹层组件实现的,FastAdmin在此基础上进行了扩展和二次开发,除了Layer原有的功能外,还有部分FastAdmin特有的功能。首先我们先来看看最常用... 查看详情
java8添加了对象列表的多个属性的值(代码片段)
可以说我下面有一个类有getter和setter但只有默认构造函数。注意:我不允许更改此类的结构。classTargetprivateStringyear;privateStringmonth;privateStringname;privatedoubletarget;privatedoubleachieved;publicStringgetYear()returnyear;publicvo 查看详情
unity2019学习:常用功能--unityui事件响应(代码片段)
...景中没用该游戏对象,则UI无法对事件进行响应。在添加UnityUI的时候,如果场景中没用该游戏对象,会自动添加。编辑器设置默认事件响应无参 查看详情
19.unittest原理(代码片段)
...模块。单元测试框架 TestCase:测试用例类此类的一个实例,就是一个测试用例。一个完整的测试用例包括:包括测试前准备环境的搭建(setUp),执行测试代码(run),以及测试后环境的还原(tearDown)。TestSuite:测试套件... 查看详情
ansible常用功能(代码片段)
...我就不在这里赘述了,网上一找一堆这里写点我在ansible常用功能1、命令串#copy文件#ansiblehost文件中的主机组-m模块名-a"src=ansible主控绝对路径dest=被控绝对路径"ansiblestudy-mcopy-a"src=/study-a/123.txtdest=/study-b/123.txt"#shell命 查看详情
day05-lombokspringinitializer(代码片段)
...解的功能。@Setter可标注到类或属性上,标注到类上表示此类中的所有属性生成setter方法,标注到某个属性上,表示此属性生成setter方法。@Getter可标注到类或属性上,标注到类上表示此类中的所有属性生成getter方法,标注到某个... 查看详情
template(代码片段)
...hromeApp][2],支持移动端Web;深度整合:支持选择笔记本和添加标签,支 查看详情
#java常用代码片段(代码片段)
Java常用代码片段延迟队列JDK中提供了一组实现延迟队列的API,位于Java.util.concurrent包下DelayQueue。DelayQueue是一个BlockingQueue(无界阻塞)队列,它本质就是封装了一个PriorityQueue(优先队列),PriorityQueue... 查看详情
#java常用代码片段(代码片段)
Java常用代码片段延迟队列JDK中提供了一组实现延迟队列的API,位于Java.util.concurrent包下DelayQueue。DelayQueue是一个BlockingQueue(无界阻塞)队列,它本质就是封装了一个PriorityQueue(优先队列),PriorityQueue... 查看详情
java在javafxhtmleditor中添加了导入数据按钮(代码片段)
查看详情
phpcakephp添加了功能(代码片段)
查看详情
十种常用的设计模式(代码片段)
...式:a)将被实现的类的构造方法设计成private的。b)添加此类引用的静态成员变量,并为其实例化。c) 在被实现的类中提供公共的Creat 查看详情
java集合类运用(代码片段)
...方法:publicvoidadd(intindex,Eelement):将指定的元素,添加到该集合中的指定位置上。publicEget(intindex):返回集合中指定位置的元素。publicEremove(intindex):移除列表中指定位置的元素,返回的是被移除的元素。publicEset(intindex,Eelement):... 查看详情
简单介绍java中常用的几种线程池(代码片段)
Java中所有线程的创建都来自于同一个父类:java.util.concurrent.ExecutorsextendsObject。只要对Executors的常用API熟悉了,基本上剩下的只是熟练程度的问题了1、 newFixedThreadPoolpublicstaticExecutorServicenewFixedThreadPool(intnThreads) 源码 查看详情
java中调试与测试常用方法(代码片段)
...Java中,断言默认是不开启的,需要手动进行开启,只需添加参数-ea(enableassert的意思) 开启步骤:选中项目路径,鼠标右键进入到Properties进入到如下目录,按图示进行设置进入到java设置界面,按照如下图所示逐步... 查看详情
string类常用方法(代码片段)
...有的字符串文字(例如"abc")都可以被看作是实现此类的实例。类String中包括用于检查各个字符串的方法,比如用于比较字符串,搜索字符串,提取子字符串以及创建具有翻译为大写或小写的所有字符的字符串的副本。特... 查看详情
java中常用的转义字符(代码片段)
...不住也分享一下给大家,👉点击跳转到网站Java中常用的转义字符,看如下代码:publicclassChangeCharpublicstaticvoidmain(String[]args)//\\t:一个制表位,表示对齐的功能System.out.println("北京\\t天津\\t上海");//\\nSystem.o... 查看详情
java中arraylist类常用方法和遍历(代码片段)
...查。常用的方法有: publicbooleanadd(Ee):将指定的元素添加到此集合的尾部。publicEremove(intindex):移除此集合中指定位置上的元素。返回被删除的元素。publicEget(intindex):返回此集合中指定位置上的元素。返回获取的元素。public... 查看详情