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文件和邮箱格式是否合法的更多相关文章

  1. 一个Java文件至多包含一个公共类

    编写一个java源文件时,该源文件又称为编译单元.一个java文件可以包含多个类,但至多包含一个公共类,作为编译时该java文件的公用接口,公共类的名字和源文件的名字要相同,源文件名字的格式为[公共类 ...

  2. Java基础-一个java文件多个类的问题

    一个.java文件当然可以包括多个类.但这些类有一个特殊的类与其它的不同,,这个类是带public 属性的类.一个.java类文件中仅有一个public属性的类.而且这个类与文件名相同.

  3. 一个java文件编译之后会产生多个class文件

    如图所示:如果编译后一个java文件中类有内部类的话,就会编译产生多个类

  4. Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件?

    ylbtech-Java-Runoob-高级教程-实例-环境设置实例:1.Java 实例 – 如何编译一个Java 文件? 1.返回顶部 1. Java 实例 - 如何编译 Java 文件  Java ...

  5. 一个.java文件中是否可以有多个类

    前段时间,有个同事问到我这个问题:一个.java文件中是否可以有多个类? 答案:可以有多个类,但最多只能有一个被public修饰的class. 且若这个.java文件中有一个public类型的clas ...

  6. 一个java文件被执行的历程

    学习java以来,都是以语法,类库入手,最基本的也是最基础的java编译过程往往被我遗忘,先解释一下学习java第一课时,都听到过的一句话,"java是半解释语言".什么是半解释语 ...

  7. 第一个Java文件

    HelloWorld 1.新建一个文件夹,用来存放java文件的 2.用subline来编辑第一个Java文件 要注意的是java的文件名为.java 我们自定义的文件名是Hello 3.编写第一个j ...

  8. Eclipse 想运行一个java文件,结果却运行了另外一个

    参考: Eclipse 想运行一个java文件,结果却运行了另外一个_小鹰信息技术服务部-CSDN博客_eclipse怎么运行另一个

  9. 非正则表达式检验邮箱格式是否合法(Java代码实现)

    一.邮箱格式需满足以下要求 1. 有且只有一个@                        2. @不能放在开头,也不能放在结尾                        3. @之后必须有. ...

随机推荐

  1. Linux_Oracle10 下载安装

    Linux_Oracle10 安装文档及oracle下载地址 http://download.csdn.net/detail/u012750578/8177405 一.启动数据库服务 [root@hq ...

  2. MyEclipse的代码自动提示功能

     一般默认情况下,Eclipse ,MyEclipse的代码提示功能是比Microsoft Visual Studio的差很多的,主要是Eclipse ,MyEclipse本身有很多选项是默认关闭的, ...

  3. Swift学习笔记(12)--数组和字典的复制

    Swift中,数组Array和字典Dictionary是用结构来实现的,但是数组与字典和其它结构在进行赋值或者作为参数传递给函数的时候有一些不同. 并且数组和字典的这些操作,又与Foundation中 ...

  4. zoj 2317 Nice Patterns Strike Back(矩阵乘法)

    problemId=1317">http://acm.zju.edu.cn/onlinejudge/showProblem.do? problemId=1317 给出一个n*m的矩阵( ...

  5. 【Cocos游戏实战】功夫小子第五课之帮助场景和选关功能的实现

    功夫小子之帮助场景和选关功能的实现 转载请注明出处:http://blog.csdn.net/suool/article/details/46661231 本节课的视频教程地址是: hmsr=teac ...

  6. iOS定制改动navigation的backbutton

    iOS开发中.navigation的返回button是英文"back".想改动成中文"返回"或者自己定义的文字.这么简单的事情却折腾了小半个小时.原来是被lef ...

  7. HBase 数据库检索性能优化策略

    HBase 数据表介绍 HBase 数据库是一个基于分布式的.面向列的.主要用于非结构化数据存储用途的开源数据库.其设计思路来源于 Google 的非开源数据库"BigTable" ...

  8. VS 格式化代码 Ctrl + K, Ctrl + F

  9. Css盒模型有哪几部分,标准盒模型和IE盒模型有哪些区别

    首先介绍Css的盒模型也就是标准盒模型(BOX Model) 包含了 内容(content) 内边距(padding) 边框(border) 外边框(margin) 这是大家经常用到的,也是现在的标准 ...

  10. 9.多彩的幕布layer

    CCLayerCorlor bool CCLayerColor::initWithColor(const ccColor4B & color); bool CCLayerColor::init ...