如下字符串:No:20031234,Name:zhangsan; No:20035678,Name:lisi分别找出第一个和最后一个’a’出现的位置; 分别找出第一个和最后一个“Name”出现的位置; 判断字符串是否以“No”开头,是否以“zhangsan”结尾;判断其是否包含“5678” 判断字符串是否为空,如果不空计算字符串的长度; 分别将字符串全部转换成小写;分别将字符串全部转换成大写。 将字符串中所有的“No”全部变成“stuNo”; 取出从第5个字符开始的所有字符; 取出从第5个开始,15个结束的所有字符; 找出“lisi”的学号,将其中第4位改成9,并将其逆序显示; 将“ No:20032222,Name:wangwu ”中头尾的空格去掉,并合并到原来的字符串中。 将“No:20031111,Name:zhaoliu”插入到zhangsan和lisi信息的中间显示。
时间: 2023-06-27 12:01:37 浏览: 37
第一个'a'出现的位置为:2,最后一个'a'出现的位置为:41。
第一个"Name"出现的位置为:9,最后一个"Name"出现的位置为:30。
字符串以"No"开头,不以"zhangsan"结尾。字符串包含"5678"。
字符串不为空,长度为:42。
字符串全部转换成小写为:no:20031234,name:zhangsan; no:20035678,name:lisi。
字符串全部转换成大写为:NO:20031234,NAME:ZHANGSAN; NO:20035678,NAME:LISI。
将字符串中所有的"No"全部变成"stuNo":stuNo:20031234,Name:zhangsan; stuNo:20035678,Name:lisi。
从第5个字符开始的所有字符为:"20031234,Name:zhangsan; No:20035678,Name:lisi"。
从第5个开始,15个结束的所有字符为:"1234,Name:z"。
找出"lisi"的学号为:"20035678",将其第4位改成9并逆序显示为:"87695602"。
将"No:20031111,Name:zhaoliu"插入到zhangsan和lisi信息的中间显示为:"No:20031234,Name:zhangsan; No:20031111,Name:zhaoliu; No:20035678,Name:lisi"。
去掉头尾空格后的字符串为:"No:20031234,Name:zhangsan; No:20035678,Name:lisi"。
相关问题
如下字符串:No:20031234,Name:zhangsan; No:20035678,Name:lisi使用java分别找出第一个和最后一个’a’出现的位置; 分别找出第一个和最后一个“Name”出现的位置; 判断字符串是否以“No”开头,是否以“zhangsan”结尾;判断其是否包含“5678” 判断字符串是否为空,如果不空计算字符串的长度; 分别将字符串全部转换成小写;分别将字符串全部转换成大写。 将字符串中所有的“No”全部变成“stuNo”; 取出从第5个字符开始的所有字符; 取出从第5个开始,15个结束的所有字符; 找出“lisi”的学号,将其中第4位改成9,并将其逆序显示; 将“ No:20032222,Name:wangwu ”中头尾的空格去掉,并合并到原来的字符串中。 将“No:20031111,Name:zhaoliu”插入到zhangsan和lisi信息的中间显示。
1. 找出第一个和最后一个’a’出现的位置
```java
String str = "No:20031234,Name:zhangsan; No:20035678,Name:lisi";
int firstA = str.indexOf('a');
int lastA = str.lastIndexOf('a');
System.out.println("第一个'a'出现在字符串的位置:" + firstA);
System.out.println("最后一个'a'出现在字符串的位置:" + lastA);
```
2. 分别找出第一个和最后一个“Name”出现的位置
```java
int firstName = str.indexOf("Name");
int lastName = str.lastIndexOf("Name");
System.out.println("第一个\"Name\"出现在字符串的位置:" + firstName);
System.out.println("最后一个\"Name\"出现在字符串的位置:" + lastName);
```
3. 判断字符串是否以“No”开头,是否以“zhangsan”结尾
```java
boolean startsWithNo = str.startsWith("No");
boolean endsWithZhangsan = str.endsWith("zhangsan");
System.out.println("字符串是否以\"No\"开头:" + startsWithNo);
System.out.println("字符串是否以\"zhangsan\"结尾:" + endsWithZhangsan);
```
4. 判断其是否包含“5678”
```java
boolean contains5678 = str.contains("5678");
System.out.println("字符串是否包含\"5678\":" + contains5678);
```
5. 判断字符串是否为空,如果不空计算字符串的长度
```java
if (str.isEmpty()) {
System.out.println("字符串为空");
} else {
System.out.println("字符串长度为:" + str.length());
}
```
6. 分别将字符串全部转换成小写,大写
```java
String lowerCaseStr = str.toLowerCase();
String upperCaseStr = str.toUpperCase();
System.out.println("字符串全部转换成小写:" + lowerCaseStr);
System.out.println("字符串全部转换成大写:" + upperCaseStr);
```
7. 将字符串中所有的“No”全部变成“stuNo”
```java
String replacedStr = str.replace("No", "stuNo");
System.out.println("将字符串中所有的\"No\"全部变成\"stuNo\":" + replacedStr);
```
8. 取出从第5个字符开始的所有字符
```java
String subStr1 = str.substring(4);
System.out.println("从第5个字符开始的所有字符:" + subStr1);
```
9. 取出从第5个开始,15个结束的所有字符
```java
String subStr2 = str.substring(4, 19);
System.out.println("从第5个开始,15个结束的所有字符:" + subStr2);
```
10. 找出“lisi”的学号,将其中第4位改成9,并将其逆序显示
```java
int lisiIndex = str.indexOf("lisi");
String lisiNo = str.substring(lisiIndex - 11, lisiIndex - 1);
String reversedLisiNo = new StringBuilder(lisiNo).reverse().toString();
String modifiedLisiNo = lisiNo.substring(0, 3) + "9" + lisiNo.substring(4);
System.out.println("lisi的学号为:" + lisiNo);
System.out.println("将其中第4位改成9后的学号为:" + modifiedLisiNo);
System.out.println("逆序显示的学号为:" + reversedLisiNo);
```
11. 将“ No:20032222,Name:wangwu ”中头尾的空格去掉,并合并到原来的字符串中
```java
String str2 = " No:20032222,Name:wangwu ";
str2 = str2.trim();
str = str + str2;
System.out.println("去掉头尾空格并合并后的字符串为:" + str);
```
12. 将“No:20031111,Name:zhaoliu”插入到zhangsan和lisi信息的中间显示
```java
String insertStr = ", No:20031111,Name:zhaoliu";
int zhangsanIndex = str.indexOf("zhangsan");
int lisiIndex = str.indexOf("lisi");
str = str.substring(0, zhangsanIndex) + insertStr + str.substring(zhangsanIndex, lisiIndex) + insertStr + str.substring(lisiIndex);
System.out.println("将\"No:20031111,Name:zhaoliu\"插入到zhangsan和lisi信息的中间显示:" + str);
```
Java Hashset<Object> 用stream流,先过滤出包含某字符串"zhangsan:name"的,然后在进行计数,麻烦给出优秀的示例代码
### 回答1:
下面是一个优秀的示例代码:
```
import java.util.HashSet;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
HashSet<Object> set = new HashSet<>();
set.add("zhangsan:name");
set.add("lisi:age");
set.add("wangwu:address");
set.add("zhangsan:name");
long count = set.stream()
.filter(x -> x.toString().contains("zhangsan:name"))
.collect(Collectors.counting());
System.out.println("包含字符串zhangsan:name的元素数量为:" + count);
}
}
```
输出结果为:
```
包含字符串zhangsan:name的元素数量为:1
```
### 回答2:
下面是一个使用Java的HashSet和Stream流的示例代码:
```java
import java.util.HashSet;
import java.util.stream.*;
public static void main(String[] args) {
HashSet<Object> set = new HashSet<>();
set.add("zhangsan:name");
set.add("lisi:age");
set.add("zhangsan:address");
set.add("wangwu:name");
long count = set.stream()
.filter(obj -> obj.toString().contains("zhangsan:name"))
.count();
System.out.println(count);
}
```
以上代码首先创建了一个HashSet集合对象,并添加了一些字符串。然后通过使用stream()方法将集合转换为一个流对象。接着使用filter()方法来过滤出包含字符串"zhangsan:name"的元素。最后使用count()方法来计数满足条件的元素个数。
上述代码运行结果会输出为1,表示HashSet集合中包含1个元素满足条件"zhangsan:name"。
希望这个示例对你有帮助!
### 回答3:
Sure! 下面是一个使用Java流和过滤的示例代码:
```java
import java.util.HashSet;
public class Main {
public static void main(String[] args) {
// 创建一个Hashset并添加元素
HashSet<Object> set = new HashSet<>();
set.add("zhangsan:name");
set.add("lisi:age");
set.add("zhangsan:gender");
set.add("wangwu:name");
// 使用流过滤和计数包含指定字符串的元素
long count = set.stream()
.filter(object -> object.toString().contains("zhangsan:name"))
.count();
// 输出结果
System.out.println("包含字符串'zhangsan:name'的元素个数为:" + count);
}
}
```
以上代码创建了一个HashSet,并向其中添加了4个元素。然后使用流的filter方法,通过lambda表达式进行过滤,只保留包含字符串"zhangsan:name"的元素。最后使用count方法计算包含指定字符串的元素个数。输出结果为"包含字符串'zhangsan:name'的元素个数为:1"。