1. 求java代碼判斷手機號是不是移動號
這個你要根據移動和其他號碼不同的地方 , 也就是開頭三位數來判斷啊
可以將手機號用字元來表示
然後用String的 startsWith("150") 方法來判斷 , 當然如果這樣的話 , 你需要搜集移動號碼的所有可能性 , 然後用 || 邏輯或 放在一起
或者你也可以把所有移動手機號所屬的前三位 放到一個數組或者集合中 , 比如{"150","158"}
然後把需要判斷的手機號 截取前三位 , 判斷是否在集合或者數組中
2. Java快速判斷是不是手機號
可以藉助正則表達式來驗證手機號碼,這是比較高效的做法
publicclassIsPhone{
publicfinalstaticStringPHONE_PATTERN="^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17([0,1,6,7,]))|(18[0-2,5-9]))\d{8}$";
publicstaticvoidmain(String[]args){
Scannerscan=newScanner(System.in);
System.out.println("請輸入驗證號碼");
Stringval=scan.nextLine();
booleanisPhone=Pattern.compile(PHONE_PATTERN).matcher(val).matches();
System.out.println(isPhone?"是一個手機號碼":"不是手機號");
}
}
3. java中手機號碼用什麼數據類型表示
手機號碼可以用string數據類型來表示。
判斷是否為手機號碼可以通過正則表達式來處理,示例如下:
importjava.util.regex.Pattern;
importjava.util.regex.Matcher;
publicclassTest
{
publicstaticbooleancheck(Stringphonenumber)
{
Stringphone="1\d{2,3}-\d{7,8}";
Patternp=Pattern.compile(phone);
Matcherm=p.matcher(phonenumber);
returnm.matches();
}
publicstaticvoidmain(Stringargs[])
{
Strings="010-88888888";
System.out.println(Test.check(s));
}
}
4. java編程實現自定義異常判斷一個手機號碼的合法性
用正則判斷,
/**
*驗證手機號碼格式是否正確
*@parammobiles
*@returntrue表示正確false表示不正確
*/
(Stringmobiles){
Patternp=Pattern.compile("^((13[0-9])|(15[0-9])|(18[0-9]))\d{8}");
Matcherm=p.matcher(mobiles);
returnm.matches();
}
當然手機號碼好像還有17開頭的,對應的正則改一下就好
"^((13[0-9])|(15[0-9])|(18[0-9])|(17[0-9]))\d{8}"
然後在你的代碼裡面調用這個方法,如果結果為false,就throw new MyException(「手機號碼格式不正確」)一個異常。
異常定義可以去繼承Exception
/**
*CreatedbyKevinon2015/3/30.
*/
{
privateStringmsg;
publicMyException(Stringmsg){
super(msg);
this.msg=msg;
}
@Override
publicStringgetMessage(){
returnmsg;
}
}
5. java如何判斷手機號碼是11為且第一位不是0且不是+86的形式
寫在前面:最好還是用正則表達式,簡單易懂,易於維護
===================================
//這個方法判斷是不是合法的手機號碼
public boolean isPhoneNumber(String phoneNumber){
//手機號碼長度
int phoneLength=phoneNumber.length();
//第一位是不是0
String phoneOne=phoneNumber.substring(0,1);
//是不是 +86形式
int is86=phoneNumber.indexOf("+86");
//是純數字 並且長度等於11 並且第一位不是0 並且 不包含+86
return isNumeric(phoneNumber)&&phoneLength==11&&!phoneOne.equals("0")&&is86==-1;
}
//這個方法判斷字元串是不是純數字
public static boolean isNumeric(String str){
Pattern pattern = Pattern.compile("[0-9]*");
Matcher isNum = pattern.matcher(str);
if( !isNum.matches() ){
return false;
}
return true;
}
6. 關於java正則表達式判斷是否是手機號.
//你能把完整的程序貼出來么
//你限定一下位數
publicclassRegexDemo{
publicstaticvoidmain(String[]args){
Stringregex="1(3|5|7|8)[0-9]{9}";
Stringnum="17623629758";
System.out.println(num.matches(regex));
}
}
7. JAVA 判斷號碼是手機還是固話
/**
* 驗證是否是手機號碼
*
* @param str
* @return
*/
public static boolean isPhone(String str) {
if (ValidationUtils.isEmpty(str)) {
return false;
}
Pattern pattern = Pattern.compile("^(1[3,4,5,7,8][0-9])\\d{8}$");
Matcher matcher = pattern.matcher(str);
boolean b = matcher.matches();
return b;
}
/**
* 是否是座機電話號碼
*
* @param str
* @return
*/
public static boolean isFixedLine(String str) {
if (ValidationUtils.isEmpty(str)) {
return false;
}
Pattern pattern = Pattern
.compile("^([0-9]{3}-?[0-9]{8})|([0-9]{4}-?[0-9]{7})$");
Matcher matcher = pattern.matcher(str);
boolean b = matcher.matches();
return b;
}
8. java中給定字元串,看它是否為手機號
public class NiHao { public static void main(String[] args) { String str = "18946178006"; // 一個字元串 boolean flag = true;// 聲明boolean變數,並為真 if (str.length() == 11) {// 判斷手機號碼的長度,length()方法是活的str這個字元串的長度 for (int i = 0; i < str.length(); i++) {// 利用for循環,從str的第一位開始檢測也就是1開始到6結束 char c = str.charAt(i);// charAt(i)是獲取str這個字元串的第i+1位上的字元,也就是下標為i的char型變數,分別為1,8,9.。。。6 if (!Character.isDigit(c)) {//每次循環,都要判斷一下這個c是不是數字 flag = false; //如果不是數字,將flag設置為false break; //只要有一個非數字,則終止循環 } } }else{ flag = false ; //如果長度不是11位,將flag設置為flag } if (flag) { System.out.println("是手機號"); } else { System.out.println("不是"); } } } 我給你修改了一下,看看那裡還看不懂。溫馨提示,手機號碼可不是這樣判斷的,假如str="00000000000",你能說它是手機號碼么?最好用正則表達式
9. 如何使用Java編程實現判斷手機號從第三位開始有多少位數字連號
publicclassPhoneNumber{
publicstaticvoidmain(String[]args){
StringphoneNumber="13812345678";
intconsecutiveNumbers=getConsecutiveNumber(phoneNumber);
System.out.println(consecutiveNumbers+"個連號");
System.out.println("總共:"+getPrice(consecutiveNumbers)+"元");
}
(Stringnumber){
intmax=1;
inttemp=1;
char[]nums=number.toCharArray();
for(inti=4;i<nums.length;i++){
if(nums[i]-1==nums[i-1]){
temp++;
}else{
temp=1;
}
if(temp>max)
max=temp;
}
returnmax;
}
publicstaticintgetPrice(intconsecutiveNumbers){
if(consecutiveNumbers<3){
return0;
}else{
return(consecutiveNumbers-2)*50;
}
}
}
附上代碼,供參考
10. java里怎麼用正則表達式判斷字元串是否為合法的手機號
恕我直言,在坐的各位都是渣渣,判斷第一位是1就是手機號真是可笑
public static boolean isMobileNO(String mobiles) {
String telRegex = "[1][3578]\\d{9}";
// "[1]"代表第1位為數字1,"[3578]"代表第二位可以為3、5、8中的一個,"\\d{9}"代表後面是可以是0~9的數字,有9位。
if (TextUtils.isEmpty(mobiles)) {
return false;
} else
return mobiles.matches(telRegex);
}