String 类开发验证码功能

需求:随机产生5位的验证码,有可能是数字,小写字母或者大写字母。

分析:1、定义一个String 类型的变量来存储一些可能要出现的字符串。

2、循环5次,随机一个范围内的索引,获取对应字符,连接起来即可。

代码如下:

package zhtPractice.String的应用;

import java.util.Random;

public class String类开发验证码功能 {
    public static void main(String[] args) {
        //有可能出现的数字或者字母
        String datas = "0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFHJKLZXCVBNM";
        //初始验证码为空
        String code = "";
        //随机数
        Random r = new Random();
        //循环5次,每次生成一个随机索引,提取对应的字符,时期链接在一起即可
        for (int i = 0; i < 5; i++) {
            int index = r.nextInt(datas.length());//随机一个字符串索引
            char c = datas.charAt(index);//提取对应的字符
            code += c;//连接在一起
        }
        System.out.println(code);
    }
}

 运行结果:

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在安卓开发中,手机号验证码登录功能可以通过以下步骤实现: 1. 在布局文件中添加手机号和验证码的输入框以及登录按钮。 2. 在Activity中初始化相关控件,并设置点击事件。 3. 在点击事件中,获取手机号和验证码的输入内容,并进行格式校验。 4. 调用后台接口,向手机号发送验证码。 5. 在用户输入验证码后,调用后台接口验证验证码是否正确。 6. 如果验证通过,跳转到主界面;否则给出错误提示。 以下是一个简单的代码示例: ```java public class LoginActivity extends AppCompatActivity implements View.OnClickListener { private EditText mEtPhone; private EditText mEtCode; private Button mBtnGetCode; private Button mBtnLogin; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_login); // 初始化控件 mEtPhone = findViewById(R.id.et_phone); mEtCode = findViewById(R.id.et_code); mBtnGetCode = findViewById(R.id.btn_get_code); mBtnLogin = findViewById(R.id.btn_login); // 设置点击事件 mBtnGetCode.setOnClickListener(this); mBtnLogin.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_get_code: // 获取验证String phone = mEtPhone.getText().toString(); if (!isValidPhone(phone)) { Toast.makeText(this, "请输入正确的手机号", Toast.LENGTH_SHORT).show(); return; } getCode(phone); break; case R.id.btn_login: // 登录 String phone = mEtPhone.getText().toString(); String code = mEtCode.getText().toString(); if (!isValidPhone(phone)) { Toast.makeText(this, "请输入正确的手机号", Toast.LENGTH_SHORT).show(); return; } if (!isValidCode(code)) { Toast.makeText(this, "请输入正确的验证码", Toast.LENGTH_SHORT).show(); return; } login(phone, code); break; } } // 校验手机号格式 private boolean isValidPhone(String phone) { return !TextUtils.isEmpty(phone) && phone.length() == 11 && Pattern.matches("^1[3-9]\\d{9}$", phone); } // 校验验证码格式 private boolean isValidCode(String code) { return !TextUtils.isEmpty(code) && Pattern.matches("^\\d{6}$", code); } // 获取验证码 private void getCode(String phone) { // 调用后台接口发送验证码 } // 登录 private void login(String phone, String code) { // 调用后台接口验证验证码是否正确,并跳转到主界面 } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值