文章目录

  • 编写方法,实现指定字符串翻转
    • 翻转全部
    • 翻转指定索引
  • 输入用户名、密码、邮箱,如果信息录入正确,则提示注册成功,否则生成异常对象
  • 编写java程序
    • 输入形式为:“Willian Jefferson Clinton”,输出形式为:Clinton,Willian.J
  • 输入字符串,判断里面有多少个大写字母,多少个小写字母,多少个数字
    • Mycode
    • Teacher's code
  • 看代码,画出String内存关系图

编写方法,实现指定字符串翻转

翻转全部

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 14:03*/
public class Homework01 {public static void main(String[] args) {String a = "1234567";System.out.println(reverse(a));}public static String reverse(String str){char[] str2 = str.toCharArray();String str3 = "";for (int i = str2.length - 1; i >= 0; i--) {str3 += str2[i];}return str3;}
}

翻转指定索引

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 14:03*/
public class Homework01 {public static void main(String[] args) {String a = "1234567";try {System.out.println(reverse(a,1,3));} catch (Exception e) {System.out.println(e.getMessage());}}public static String reverse(String str, int start, int end){//对输入的参数做一个验证//重要的编程技巧!!!//(1) 写出正确的情况//(2) 然后取反即可if(!(str != null && start >= 0 && end > start && end <str.length())){throw new RuntimeException("参数不正确");}char[] str2 = str.toCharArray();String str3 = "";str3 += str.substring(0,start);for (int i = end; i >= start; i--) {str3 += str2[i];}str3 += str.substring(end + 1);return str3;}
}

输入用户名、密码、邮箱,如果信息录入正确,则提示注册成功,否则生成异常对象

  1. 用户名长度为2或3或4
  2. 密码的长度为6,要求全是数字
  3. 邮箱中包含@和.并且@在.的前面

Mycode

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 15:09*/
public class Homework02 {public static void main(String[] args) {try {register("涛涛","124567","2965883296@qq.com");} catch (Exception e) {System.out.println("请检查你的输入格式!!");}}public static void register(String name_,String password_,String email_){int count = 0;if(name_.length() > 1 && name_.length() <= 4){System.out.println("姓名格式正确");count++;}else{System.out.println("姓名输入错误");}if(password_.length() == 6){try {int num = Integer.parseInt(password_);      //转intSystem.out.println("密码格式正确");count++;} catch (NumberFormatException e) {System.out.println("只能输入数字");}}else{System.out.println("密码输入错误");}//如果邮箱中能找到@和.,并且@的索引比.要小(非)if(!(email_.indexOf("@") != -1 && email_.indexOf(".") != -1 && email_.indexOf("@") < email_.indexOf("."))){System.out.println("邮箱输入错误");}else{System.out.println("邮箱格式正确");count++;}if(count == 3){System.out.println("注册成功");}else{System.out.println("please check our ");}}
}

Teacher’s code

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 15:09*/
public class Homework02 {public static void main(String[] args) {try {register("涛涛","124567","2965883296@qq.com");} catch (Exception e) {System.out.println("请检查你的输入格式!!");}}public static void register(String name_,String password_,String email_){//防止参数为空if(!(name_ != null && password_ != null && email_ != null)){throw new RuntimeException("参数不能为空");}if(!(name_.length() > 1 && name_.length() <= 4)){throw new RuntimeException("用户名长度为2或3或4");}if(!(password_.length() == 6 && isDigital(password_))){    //调用方法  true truethrow new RuntimeException("密码只能6位纯数字");}//如果邮箱中能找到@和.,并且@的索引比.要小(非)if(!(email_.indexOf("@") != -1 && email_.indexOf(".") != -1 && email_.indexOf("@") < email_.indexOf("."))){throw new RuntimeException("邮箱中必须存在@和.,并且@在.前面");}System.out.println("注册成功");}//密码数字判断public static boolean isDigital(String str){char[] chars = str.toCharArray();for (int i = 0; i < chars.length; i++) {if(chars[i] < '0' && chars[i] > '9'){return false;}}return true;}
}

编写java程序

输入形式为:“Willian Jefferson Clinton”,输出形式为:Clinton,Willian.J

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 15:59*/
public class Homework03 {public static void main(String[] args) {String name = null;try {name = "Willian Jefferson Clinton";formatName(name);} catch (Exception e) {System.out.println(e.getMessage());}}public static void formatName(String name){if (name == null){throw new RuntimeException("输入姓名不能为空");}String[] arr = name.split(" ");if(arr.length != 3){throw new RuntimeException("请检查输入格式");}arr[2] += ",";arr[0] += ".";arr[1] = arr[1].substring(0,1);System.out.print(arr[2] + arr[0] + arr[1]);}
}

输入字符串,判断里面有多少个大写字母,多少个小写字母,多少个数字

Mycode
package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 16:55*/
public class Homework04 {public static void main(String[] args) {String a = "fadsfasdfFFFSFSFS45646464";findChar(a);}public static void findChar(String str){    //方法名小驼峰int number = 0;int lowerCase = 0;int upperCase = 0;char[] chars = str.toCharArray();for(char i:chars){if(i >= 48 && i <= 57){number++;}else if(i >= 65 && i <= 90){upperCase++;}else{lowerCase++;}}System.out.println("大写字母有:" + upperCase + "\n小写字母有:" +lowerCase + "\n数字有:" + number);}
}
Teacher’s code
package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 16:55*/
public class Homework04 {public static void main(String[] args) {String a = "fadsfasdfFFFSFSFS45646464";findChar(a);}public static void findChar(String str){    //方法名小驼峰int number = 0;int lowerCase = 0;int upperCase = 0;char[] chars = str.toCharArray();for(char i:chars){if(i >= '0' && i <= '9'){number++;}else if(i >= 'A' && i <= 'Z'){upperCase++;}else{lowerCase++;}}System.out.println("大写字母有:" + upperCase + "\n小写字母有:" +lowerCase + "\n数字有:" + number);}
}

看代码,画出String内存关系图

package com.tao.homework.string_;/*** Create By 刘鸿涛* 2022/1/4 17:25*/
public class Homework05 {public static void main(String[] args) {String s1 = "taotao";Animal a = new Animal(s1);Animal b = new Animal(s1);System.out.println(a == b);             //F     两个对象System.out.println(a.equals(b));        //F     Animal类没有重写equals ,判断是否同一个对象System.out.println(a.name == b.name);   //T     指向同一个空间String s4 = new String("taotao");   //新对象 value数组String s5 = "taotao";                   //指向存在的常量池System.out.println(s1 == s4);           //FSystem.out.println(s4 == s5);           //FString t1 = "hello" + s1;               //堆中开 value数组String t2 = "hellotaotao";              //存在后指向常量池System.out.println(t1.intern() == t2);     //t1.intern()指向池 T}
}
class Animal{String name;public Animal(String name) {this.name = name;}
}

Java - 常用类 - 结业 - 课堂练习相关推荐

  1. 这些Java常用类,你必须要学会,还不快快收藏?(近两万字详细介绍)

    零基础学习之Java常用类 概述 包装类 和数学相关的类 String类 创建字符串对象 使用构造方法 使用静态方法 使用" " + 拼接 字符串对象的比较 字符串的常用方法 可变 ...

  2. Java常用类之要点总结

    Java常用类之要点总结

  3. java map常用类及其方法_Day50.Map类常用的方法 -Java常用类、集合#、IO

    Day50.Map类常用的方法 -Java常用类.集合#.IO Day50.Map类常用的方法 -Java常用类.集合#.IO Map类常用的方法 . 总结: 常用方法 添加: put(Object ...

  4. java常用类的方法,java常用类的使用方法

    java常用类的使用方法 Interger:整数类型 1.属性. static int MAX_VALUE:返回最大的整型数: static int MIN_VALUE:返回最小的整型数: stati ...

  5. 返回值 包装类_(九)Java常用类

    (九)Java常用类 String类 概述 /*String:字符串,使用一对""来表示. * 1.String声明为final,不能被继承. * 2.String实现了Seria ...

  6. java 类 函数,java常用类和函数

    JAVA中常用类的常用方法_计算机软件及应用_IT/计算机_专业资料.. JAVA 中常用类的常用方法 一. java.lang.Object 类 1. clone ()方法 创建并返回此对象的... ...

  7. 48 java常用类_10 _Calendar类

    48 java常用类_10 _Calendar类 Calendar提供了获取或设置各种日历字段的方法. 构造方法 : protected Calendar(); //由于修饰符是protected,所 ...

  8. java 常用类 - 大数据运算

    java 常用类 - 大数据运算 在 Java中提供了用于大数字运算的类,即 java.math.BigInteger 类和 java.math.BigDecimal 类.这两个类用于高精度计算,其中 ...

  9. 舔砖加瓦(java)之java常用类

    添砖加瓦(java) 常用类 前言: 大家好我是kdy丶 这里写目录标题 添砖加瓦(java) ***常用类*** 前言: 一丶字符串相关的类 1丶String类 2丶StringBuffer和Str ...

最新文章

  1. python 把集合转成字典的方法
  2. 【转载】快速升职加薪的10个方法
  3. 黑客用python还是ruby-Python、Lua和Ruby之优劣
  4. 中等职业学校计算机教学方法,浅析中等职业学校“计算机基础课”教学方法.doc...
  5. delphi 最全日期格式_DateUtils时间单元说明
  6. 【bzoj2132】圈地计划 网络流最小割
  7. UUID 32位生成
  8. paypal php txn id,php 接入 paypal 支付
  9. 多版本号并发控制(MVCC)在实际项目中的应用
  10. RGB 与 RGBA 与 16进制 与 HSL 之间的简单转换
  11. 一、Python-简介
  12. python简单制作节日贺卡
  13. Rss Feed是什么
  14. python使用文字识别读取图片文字
  15. 管理者如何正确激励员工、调动其工作积极性?
  16. 生物在计算机应用,生物技术在计算机领域中的应用有哪些
  17. 个人收款码跟聚合码的区别
  18. 牛客每日练习----​​​​​​​最长回文,Alice和Bob赌糖果,N阶汉诺塔变形
  19. 孩子越出息,父母越孤独
  20. iOD及Detectron2搭建过程问题记录

热门文章

  1. 玉米社:营销推广软文_文章写作类型有哪些?
  2. cad在线转换_无奈知道的人太少!一键教你CAD转换其他文件格式,秒操作
  3. PCB布局布线常用规则
  4. android tcpstomp协议,StompProtocolAndroid 使用方法
  5. Hbuilder动态加载图片轮播
  6. CompletableFuture异步编排(2)
  7. 【Docker系列】Docker Compose 水平扩展
  8. 科技公司 IPO,利润不重要,证据在这里
  9. 微软 Build 2019:IE 重生,Azure 成主角;华为拟在英剑桥新建半导体研发基地,与ARM做邻居……...
  10. WIFI名字为特殊字符显示乱码(MTK)