推断一个java文件和邮箱格式是否合法
import java.util.Scanner;
public class StringTest {
public static void main(String[] args) {
int back = 1;
Scanner input =new Scanner(System.in);
do{ //设置循环方法,直至输入正确为止
System.out.print("java文件名称:");
String str1 =input.next();
System.out.print("请输入你的邮箱:");
String str2= input.next();
int m = str2.indexOf('@'); //检查是否有@字符,用m来接收@出现的索引
int n = str2.indexOf('.'); //检查是否有’.‘字符,用n来接收.出现的索引
String str3 = str1.substring(str1.indexOf(".")+1); //返回.后面的子字符串。+1是为了不包含字符‘.’
if(!str3.equals("java")){
System.out.println("java文件名称不合法!
");
}
else{
System.out.println("java文件名称合法!");
}
if(!(m != -1&& n != -1&& m <n)){ //假设m和n有一个为-1。那肯定是不合法的,m和n假设合法,m的位置必须比n小
System.out.println("邮箱名不合法!
");
}else{
System.out.println("邮箱名合法!");break;
}
}while(back !=3);
}
}
推断一个java文件和邮箱格式是否合法的更多相关文章
- 一个Java文件至多包含一个公共类
编写一个java源文件时,该源文件又称为编译单元.一个java文件可以包含多个类,但至多包含一个公共类,作为编译时该java文件的公用接口,公共类的名字和源文件的名字要相同,源文件名字的格式为[公共类 ...
- Java基础-一个java文件多个类的问题
一个.java文件当然可以包括多个类.但这些类有一个特殊的类与其它的不同,,这个类是带public 属性的类.一个.java类文件中仅有一个public属性的类.而且这个类与文件名相同.
- 一个java文件编译之后会产生多个class文件
如图所示:如果编译后一个java文件中类有内部类的话,就会编译产生多个类
- Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件?
ylbtech-Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件? 1.返回顶部 1. Java 实例 - 如何编译 Java 文件 Java ...
- 一个.java文件中是否可以有多个类
前段时间,有个同事问到我这个问题:一个.java文件中是否可以有多个类? 答案:可以有多个类,但最多只能有一个被public修饰的class. 且若这个.java文件中有一个public类型的clas ...
- 一个java文件被执行的历程
学习java以来,都是以语法,类库入手,最基本的也是最基础的java编译过程往往被我遗忘,先解释一下学习java第一课时,都听到过的一句话,"java是半解释语言".什么是半解释语 ...
- 第一个Java文件
HelloWorld 1.新建一个文件夹,用来存放java文件的 2.用subline来编辑第一个Java文件 要注意的是java的文件名为.java 我们自定义的文件名是Hello 3.编写第一个j ...
- Eclipse 想运行一个java文件,结果却运行了另外一个
参考: Eclipse 想运行一个java文件,结果却运行了另外一个_小鹰信息技术服务部-CSDN博客_eclipse怎么运行另一个
- 非正则表达式检验邮箱格式是否合法(Java代码实现)
一.邮箱格式需满足以下要求 1. 有且只有一个@ 2. @不能放在开头,也不能放在结尾 3. @之后必须有. ...
随机推荐
- 人在IT,关于计算机专业的杂谈PPT
- 紫书 例题 10-26 UVa 11440(欧拉函数+数论)
这里用到了一些数论知识 首先素因子都大于M等价与M! 互质 然后又因为当k与M!互质且k>M!时当且仅当k mod M! 与M!互质(欧几里得算法的原理) 又因为N>=M, 所以N!为M! ...
- flash3D学习1
今天正式学习flash3D. 先配置: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0 ...
- Codeforces 558C Amr and Chemistry 全都变相等
题意:给定一个数列,每次操作仅仅能将某个数乘以2或者除以2(向下取整). 求最小的操作次数使得全部的数都变为同样值. 比赛的时候最后没实现.唉.之后才A掉.開始一直在想二分次数,可是半天想不出怎 ...
- File的getPath()和getAbsolutePath()和getCanonicalPath()的差别
这几个方法是有一次无意的发现,我当时也不知道什么意思,就百度了,查到了一些列子: 原文地址http://www.blogjava.net/dreamstone/archive/2007/08/08/1 ...
- javascript小白学习指南1---0
第二章 变量和作用域 在看第二章时我希望,你能够回想一下前一次所讲的内容 假设有所遗忘 点这里 今天我们来说说 变量和作用域的问题 本章主要内容 基本类型和引用类型 运行环境 垃圾回收( ...
- Nios II 系统时钟timestamp的应用
在用Nios II做外设时序驱动的时候,经常会用延时函数.有时会常使用某个FPGA芯片和时钟,比如笔者一直使用的芯片是cyclone系列 EP2C35F484C8N,PLL输入SOPC时钟是50M.因 ...
- 洛谷P1919 【模板】A*B Problem升级版(FFT快速傅里叶)
题目描述 给出两个n位10进制整数x和y,你需要计算x*y. 输入输出格式 输入格式: 第一行一个正整数n. 第二行描述一个位数为n的正整数x. 第三行描述一个位数为n的正整数y. 输出格式: 输出一 ...
- C# Dapper 基本使用 增删改查事务等
using DapperTest.Models; using System.Collections.Generic; using System.Web.Http; using Dapper; usin ...
- 再次学习 Iterator 迭代器 与 Generator 生成器
Iterator : 返回的结果是:{value, done} function chef(foods){ let i = 0; return { next(){ let done = ( i> ...