day08作业:

必做题:
============================================================

第一题:
定义一个字符串s = "Hello-World",利用API完成如下小需求
1.判断字符串s,与字符串"World"是否相等,并打印出来.
2.用程序得到字符串"Wo",在字符串s中的起始索引.
3.得到s中,3号索引对应的字符,打印到控制台上
4.得到s的长度,打印在控制台上.
5.获得s中的"Hell"字符串,打印在控制台上.
6.获得s中的"orld"字符串,打印在控制台上.
7.将字符串s中的所有o替换为*号.打印在控制台上
8.将字符串s切割成"Hello"和"World"两个字符串,打印在控制台上
9.将字符串s变为字符数组,遍历数组将每个字符打印在控制台上

 1  public static void main(String[] args) {
2
3 String s="Hello-World";
4 System.out.println("World".equals(s));
5 System.out.println(s.substring(6,8));
6 System.out.println(s.charAt(3));
7 System.out.println(s.length());
8 System.out.println(s.substring(0,4));
9 System.out.println(s.substring(7));
10 System.out.println(s.replace("o","*"));
11 String[] split = s.split("-", 5);
12 for (int i = 0; i <split.length ; i++) {
13 System.out.println(split[i]);
14 }
15 char[] chars = s.toCharArray();
16 for (int i = 0; i < chars.length; i++) {
17 System.out.print(chars[i]);
18 }
19
20
21 }

第二题:
1.键盘录入一个字符串
2.统计录入的字符串中的大写字母,小写字母,数字分别有多少个.

 1 public class Dome02 {
2 public static void main(String[] args) {
3 // 1.键盘录入一个字符串
4 // 2.统计录入的字符串中的大写字母,小写字母,数字分别有多少个.
5 Scanner sc=new Scanner(System.in);
6 String s = sc.next();
7 char[] chars = s.toCharArray();
8 int big=0,small=0,num=0;
9 for (int i = 0; i < chars.length; i++) {
10 if ('a'<=chars[i]&&chars[i]<='z'){
11 small++;
12 }else
13 if ('A'<=chars[i]&&chars[i]<='Z'){
14 big++;
15 }else
16 if ('0'<=chars[i]&&chars[i]<='9'){
17 num++;
18 }
19 }
20 System.out.println("小写字母有"+small+"个");
21 System.out.println("大写字母有"+big+"个");
22 System.out.println("数字有"+num+"个");
23
24
25 }
26 }

第三题:
1.键盘录入5个字符串,组成一个数组
2.统计录入的字符串数组中的大写字母,小写字母,数字分别有多少个.

 1 package com.hp.work07;
2
3 import java.util.Scanner;
4
5 public class Dome03 {
6 public static void main(String[] args) {
7 // 1.键盘录入5个字符串,组成一个数组
8 // 2.统计录入的字符串数组中的大写字母,小写字母,数字分别有多少个.
9 Scanner sc=new Scanner(System.in);
10 String []str=new String[5];
11 for (int i = 0; i <str.length ; i++) {
12 System.out.println("请输入第"+(i+1)+"个字符串");
13 String s = sc.next();
14 str[i]=s;
15 }
16
17 int big=0,small=0,num=0;
18 for (int j = 0; j <str.length ; j++) {
19 char[] chars = str[j].toCharArray();
20 for (int i = 0; i < chars.length; i++) {
21 if ('a'<=chars[i]&&chars[i]<='z'){
22 small++;
23 }else
24 if ('A'<=chars[i]&&chars[i]<='Z'){
25 big++;
26 }else
27 if ('0'<=chars[i]&&chars[i]<='9'){
28 num++;
29 }
30 }
31
32 }
33 System.out.println("小写字母有"+small+"个");
34 System.out.println("大写字母有"+big+"个");
35 System.out.println("数字有"+num+"个");
36
37 }
38 }

第四题:
1.键盘录入一个字符串
2.将该字符串变成字符数组
3.将字符数组中的所有大写字母变成小写字母
4.如果第一位和最后一位的内容不相同,则交换
5.将字符数组中索引为偶数的元素变成'~'
6.打印数组元素的内容
------------------------------
【结果展示】
请输入字符串
abcDEf719
最终显示的效果
~b~d~f~1~

 1 package com.hp.work07;
2
3 import java.util.Scanner;
4
5 public class Dome04 {
6 // 1.键盘录入一个字符串
7 // 2.将该字符串变成字符数组
8 // 3.将字符数组中的所有大写字母变成小写字母
9 // 4.如果第一位和最后一位的内容不相同,则交换
10 // 5.将字符数组中索引为偶数的元素变成'~'
11 // 6.打印数组元素的内容
12 // ------------------------------
13 // 【结果展示】
14 // 请输入字符串
15 // abcDEf719
16 // 最终显示的效果
17 // ~b~d~f~1~
18 public static void main(String[] args) {
19 Scanner sc=new Scanner(System.in);
20 System.out.println("请输入一个字符串:");
21 String s = sc.next();
22 char[] chars = s.toCharArray();
23 for (int i = 0; i < chars.length; i++) {
24 if ('A'<=chars[i]&&chars[i]<'Z') {
25 chars[i]+=32;
26 }
27 }
28 if (chars[0] !=chars[chars.length-1]) {
29 char a=chars[0];
30 chars[0] =chars[chars.length-1];
31 chars[chars.length-1]=a;
32 }
33 for (int i = 0; i < chars.length; i++) {
34 if (i%2==0){
35 chars[i]='~';
36 }
37 System.out.print(chars[i]+"");
38 }
39
40 }
41 }

第五题:
1.键盘录入一个字符串
2.从字符串中随机获取3次字符,将获取的3个字符组成一个新的字符串.打印到控制台上

 1 package com.hp.work07;
2
3 import java.util.Random;
4 import java.util.Scanner;
5
6 public class Dome05 {
7 public static void main(String[] args) {
8 // 1.键盘录入一个字符串
9 // 2.从字符串中随机获取3次字符,将获取的3个字符组成一个新的字符串.打印到控制台上
10 Scanner sc=new Scanner(System.in);
11 System.out.println("请输入一个字符串:");
12 String next = sc.next();
13 Random random=new Random();
14 StringBuffer stringBuffer=new StringBuffer();
15 for (int i = 0; i < 3; i++) {
16 int i1 = random.nextInt(next.length());
17 char c = next.charAt(i1);
18 stringBuffer.append(c);
19 }
20 System.out.println(stringBuffer);
21 }
22 }

第六题:
1.创建一个集合,往集合中键盘录入5个字符串
2.遍历集合,将集合中长度大于4的元素末尾加上一个X,
3.遍历集合,将集合打印在控制台上.
例:键盘录入后的集合{"123","ASDFQ","qq","poiuy","asd"}
打印到控制台上的集合{"123","ASDFQX","qq","poiuyX","asd"}

 1 package com.hp.work07;
2
3 import java.util.ArrayList;
4 import java.util.Scanner;
5
6 public class Dome06 {
7 public static void main(String[] args) {
8 // 1.创建一个集合,往集合中键盘录入5个字符串
9 // 2.遍历集合,将集合中长度大于4的元素末尾加上一个X,
10 // 3.遍历集合,将集合打印在控制台上.
11 // 例:键盘录入后的集合{"123","ASDFQ","qq","poiuy","asd"}
12 // 打印到控制台上的集合{"123","ASDFQX","qq","poiuyX","asd"}
13 ArrayList<String>list=new ArrayList<String>();
14 Scanner scanner=new Scanner(System.in);
15 for (int i = 0; i < 5; i++) {
16 System.out.println("请输入第"+(i+1)+"个集合");
17 String next = scanner.next();
18 list.add(next);
19 }
20 for (int i = 0; i < list.size(); i++) {
21 if(list.get(i).length()>4){
22 System.out.println(list.set(i,list.get(i)+'X'));
23
24 }
25 }
26 System.out.println(list);
27 }
28 }

第七题:
分析以下需求,并用代码实现
1.定义如下方法public static String getPropertyGetMethodName(String property)
功能描述:
(1)该方法的参数为String类型,表示用户传入的参数,返回值类型为String类型,返回值为对应的get方法的名字
(2)如:用户调用此方法时传入参数为"name",该方法的返回值为"getName"
传入参数为"age",该方法的返回值为"getAge"

2.定义如下方法public static String getPropertySetMethodName(String property)
功能描述:
(1)该方法的参数为String类型,表示用户传入的参数,返回值类型为String类型,返回值为对应的set方法的名字
(2)如:用户调用此方法时传入参数为"name",该方法的返回值为"setName"
传入参数为"age",该方法的返回值为"setAge"

 1 package com.hp.work07;
2
3 public class Dome07 {
4 public static String getPropertyGetMethodName(String property){
5 char cha=property.charAt(0);
6 String str2=Character.toTitleCase(cha)+property.substring(1,property.length());
7 String str3="get"+str2;
8 return str3;
9 }
10
11 public static String getPropertySetMethodName(String property){
12 char cha=property.charAt(0);
13 String str2=Character.toTitleCase(cha)+property.substring(1,property.length());
14 String str3="set"+str2;
15 return str3;
16 }
17
18
19 public static void main(String[] args) {
20 System.out.println(getPropertyGetMethodName("name"));
21 System.out.println(getPropertySetMethodName("name"));
22 }
23 }

第八题:
完成下列题目要求:
①定义方法filter
要求如下:
参数:String [] arr,String str
返回值类型:String []
实现:遍历arr,将数组中包含参数str的元素存入另一个String 数组中并返回
PS:返回的数组长度需要用代码获取
②在main方法中完成以下要求:
定义一个String数组arr,数组元素有:"itcast","itheima","baitdu","weixin","zhifubao"
调用1中的filter方法传入arr数组和字符串”it”,输出返回的String数组中所有元素
示例如下:
输出的数组中的元素:
"itcast","itheima","baitdu"

 1 package com.hp.work07;
2
3 import java.util.ArrayList;
4
5 public class Dome08 {
6 public static void main(String[] args) {
7 String arr[]={"itcast","itheima","baitdu","weixin","zhifubao"};
8 String str="it";
9 filter(arr,str);
10
11 }
12 public static String[] filter(String[]arr,String s){
13 ArrayList<String> list=new ArrayList<>();
14 for (int i = 0; i < arr.length; i++) {
15 if (arr[i].contains(s)){
16 list.add(arr[i]);
17 }
18 }
19 System.out.println(list);
20 String []arr1=new String[list.size()];
21 arr1=list.toArray(arr1);
22 return arr1;
23 }
24 }

第九题:
a.定义方法public static ArrayList<String> handleString(String [] arr,String str);
实现以下功能:
遍历arr,将数组中包含参数str的元素,含有str的部分替换为*, 存入另一个新String 集合中,将新集合返回;
b.在main方法中完成以下要求:
1)定义一个String数组arr,数组元素有:"beijing", "shanghai", "tianjin", "chongqing";
2)调用handleString方法传入arr数组和字符串”a”,输出返回的String集合中所有元素;

示例如下:
控制台输出元素如下:
[sh*ngh*i,ti*njin]

 1 package com.hp.work07;
2
3 import java.util.ArrayList;
4
5 public class Dome09 {
6 public static void main(String[] args) {
7 String arr[]={"beijing", "shanghai", "tianjin", "chongqing"};
8 ArrayList<String> list=handleString(arr,"a");
9 System.out.println(list);
10 }
11 public static ArrayList<String> handleString(String [] arr,String str){
12 ArrayList<String> list=new ArrayList<>();
13 for (int i = 0; i < arr.length; i++) {
14 if (arr[i].contains(str)){
15 String replace = arr[i].replace(str, "*");
16 list.add(replace);
17 }
18 }
19 return list;
20 }
21 }

练习题:
========================================================
第十题:
1.定义一个工具类MathUtils,包含一个静态方法add,功能是:求两个数之和,并将其返回.
2.在测试类中的主方法中测试自己定义的工具类,能通过 类名.方法 调用add方法,计算两个数的和

 1 package com.hp.work07;
2
3 public class Dome10 {
4 public static void main(String[] args) {
5 int a=1; int b=4;
6 System.out.println(MathUtils.add(a,b));
7 }
8 }
9
10 public class MathUtils {
11 public static int add(int a,int b){
12 return a+b;
13 }
14 }

work07的更多相关文章

  1. java学习笔记(详细)

    java平台 1.J2SE java开发平台标准版 2.J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序.不同系统上要安装对应的虚 ...

  2. Java——抽象类、接口

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

随机推荐

  1. 行业 SaaS 微服务稳定性保障实战

    简介: 对于Tob企业而言,稳定性即是生命线.那么,面对商户数目暴增, C 端场景业务不断扩展呢,F6汽车科技又是如何搭建可观测体系呢?一线负责人深度解读实际演进过程! 很多研发人员在日常工作中经常回 ...

  2. 技术干货 | Native 页面下如何实现导航栏的定制化开发?

    ​简介: 通过不同实际场景的描述,供大家参考完成 Native 页面的定制化开发. ​ 很多 mPaaS Coder 在接入 H5 容器后都会对容器的导航栏进行深度定制,本文旨在通过不同实际场景的描述 ...

  3. 5分钟搞定Loki告警多渠道接入

    ​简介: Loki是受Prometheus启发的水平可扩展.高可用.多租户日志聚合系统.用户既可以将Loki告警直接接入SLS开放告警,也可以先将Loki接入Grafana或Alert Manager ...

  4. [Trading] 专业交易: 专业交易员和散户交易员的不同, 什么是专业交易员

    专业交易员可能用的是公司的钱或者自己的钱 有基本工资支持,散户用的是自己的钱 没有人提供工资来做交易. 目标不同,专业交易员的目的是增长投资账户和获得奖金,散户大部分是为了提取盈利收入而无法增长投资账 ...

  5. dotnet OpenXML 解析 PPT 图表 解析日期时间表示内容

    在 OpenXML 里的图表存放的日期时间很多存放的是数值,需要进行转换才能获取到用户可见的字符串 日期在 OpenXML 里可以使用数值存放,需要根据数值和格式化字符串转换为用户可见的字符串 如以下 ...

  6. 2024-05-04:用go语言,给定一个起始索引为0的字符串s和一个整数k。 要进行分割操作,直到字符串s为空: 选择s的最长前缀,该前缀最多包含k个不同字符; 删除该前缀,递增分割计数。如果有剩余

    2024-05-04:用go语言,给定一个起始索引为0的字符串s和一个整数k. 要进行分割操作,直到字符串s为空: 选择s的最长前缀,该前缀最多包含k个不同字符: 删除该前缀,递增分割计数.如果有剩余 ...

  7. 【爬虫案例】用Python爬大麦网任意城市的近期演出活动!

    目录 一.爬取目标 二.展示爬取结果 三.讲解代码 四.同步视频 五.附完整源码 一.爬取目标 大家好,我是@马哥python说 ,一枚10年程序猿. 今天分享一期python爬虫案例,爬取目标是大麦 ...

  8. Selenium4自动化测试3--元素定位By.NAME,By.LINK_TEXT 和通过链接部分文本定位,By.PARTIAL_LINK_TEXT,css_selector定位,By.CSS_SELECTOR

    4-通过名称定位,By.NAME name属性为表单中客户端提交数据的标识,一个网页中name值可能不是唯一的.所以要根据实际情况进行判断 import time from selenium impo ...

  9. SR-IOV 网卡虚拟化技术

    目录 文章目录 目录 PCI 与 PCIe 设备 SR-IOV 在 KVM 中启用 SR-IOV 网卡 手动挂载 VF 到虚拟机 指令方式挂载 SR-IOV 的数据包分发机制 PCI 与 PCIe 设 ...

  10. 2024-05-15:用go语言,考虑一个整数 k 和一个整数 x。 对于一个数字 num, 在其二进制表示中, 从最低有效位开始, 我们计算在 x,2x,3x 等位置处设定位的数量来确定其价值。

    2024-05-15:用go语言,考虑一个整数 k 和一个整数 x. 对于一个数字 num, 在其二进制表示中, 从最低有效位开始, 我们计算在 x,2x,3x 等位置处设定位的数量来确定其价值. 举 ...