手势密码校验的问题,char和int

今天写东西的时候发现一个小问题,就是关于类型转换的问题,下面简单的介绍下。

这个是我只一个手势密码校验的时候遇到的,其实后来发现校验手势密码可以不用逐个去校验,可以按照整个字符串或者将这个字符串进行MD5签名直接校验签名值都是可以的,方式有很多也各有利弊,到时还是要看自己的需求来确定。

1.我这的需求是将一个数组进行本地存储,然后在其他的时间取出来。

首先是存储代码:

for (int i = 0; i < cId.size(); i++) 
{
		stringBuffer.append(cId.get(i) );
	}
	if (mString == null || "".equals(mString)) 
           {
		sp.edit().putString("value",stringBuffer.toString().trim()).commit();
		}
2.存储完成之后就是在校验密码的时候取出,并将其转换成一个int[]传递回去,下面是代码

                 mString = sp.getString("value", "");
		if (mString != null && !"".equals(mString)) {
			String myString = mString.trim();
			char[] charArray = myString.toCharArray();
			arrays = new int[charArray.length];//数组必须初始化,并且长度是固定的。
			for (int i = 0; i < charArray.length; i++) {
				//这里是要注意的地方了,char不能直接转化为int因为char转换出来是ASCII码,
                               //所以要做处理,虽然是数字也要按照string来做,当然应该还要很多方法,欢迎补充
                         arrays[i] = Integer.parseInt(String.valueOf(charArray[i]));
				System.out.println(arrays[i]+"***********");
				
				System.out.println(charArray[i]+"------------");
			}
			System.out.println(arrays.length);
			mGestureLockViewGroup.setAnswer(arrays);//这里是设置预先的答案。

		}
下面是另外的存储方式,也是很简单的,下面简单的介绍下。

1.还是存储内容

for (int i = 0; i < cId.size(); i++) 
{
		stringBuffer.append(cId.get(i)+"," );
	}
	if (mString == null || "".equals(mString)) 
           {
		sp.edit().putString("value",stringBuffer.toString().trim()).commit();
		}
2.继续取出来分割

               mString = sp.getString("value", "");
		if (mString != null && !"".equals(mString)) {
			String myString = mString.trim();
			String[] split = myString.split(",");
            arrays = new int[split.length];//数组必须初始化,并且长度是固定的。
			for (int i = 0; i < charArray.length; i++) {
				
                        arrays[i] =Integer.parseInt(split[i]) ;
				System.out.println(arrays[i]+"***********");
				
				System.out.println(charArray[i]+"------------");
			}
			System.out.println(arrays.length);
			mGestureLockViewGroup.setAnswer(arrays);//这里是设置预先的答案。

		}
基本变化不大,这里和我以前做过的缓存用户名有些相似,不过用户名那个涉及会有去重复什么的。

基本就是这样,关于各个类型之间的转换是java中最基础的内容,也是必要掌握的知识,今天这个小内容希望对大家会有帮助。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值