String s="I am a string!"; int n =s.length(); char c=s.charAt(7); System.out.println(n); System.out.println(c);解读代码
时间: 2023-06-01 14:07:53 浏览: 68
这段代码定义了一个字符串变量 s,其值为 "I am a string!",然后用 length() 方法获取了字符串的长度,将结果保存在整型变量 n 中,接着用 charAt() 方法获取了字符串中第 7 个字符(下标从 0 开始),将结果保存在字符变量 c 中。最后,通过 System.out.println() 方法输出了 n 和 c 的值。实际输出的结果为:14 和 's'。
相关问题
java实现String s="adbajhffhaa" 用4种方法,统计字符a的个数。
好的,以下是4种方法:
方法一:使用charAt()方法逐个比较字符
```
String s = "adbajhffhaa";
int count = 0;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == 'a') {
count++;
}
}
System.out.println("字符a的个数为:" + count);
```
方法二:使用toCharArray()方法将字符串转为字符数组,再遍历数组统计个数
```
String s = "adbajhffhaa";
int count = 0;
char[] charArray = s.toCharArray();
for (int i = 0; i < charArray.length; i++) {
if (charArray[i] == 'a') {
count++;
}
}
System.out.println("字符a的个数为:" + count);
```
方法三:使用replaceAll()方法去掉非'a'的字符,然后统计字符串长度
```
String s = "adbajhffhaa";
int count = s.length() - s.replaceAll("a", "").length();
System.out.println("字符a的个数为:" + count);
```
方法四:使用正则表达式匹配'a'字符,然后统计匹配的个数
```
String s = "adbajhffhaa";
int count = 0;
Pattern p = Pattern.compile("a");
Matcher m = p.matcher(s);
while (m.find()) {
count++;
}
System.out.println("字符a的个数为:" + count);
```
以上是四种实现方法,都可以得到字符串中字符'a'的个数。
class MyString i public string getString (String s)i StringBuffer str = new StringBuffer();for (int i =e; i <s.length() ; i++) { if(i%2==0){ char c = s.charAt(i);str.append(c); } } return new String(str); } } public class E{ public static void main(String[] args)i String s ="1234567890"; MyString ms = new MyString(); System.out.print1n(ms.getString(s)); } }运行结果
该代码存在语法错误,需要进行修正才能正确运行。首先,在类定义处应该使用大括号 `{}` 包含类的成员变量和方法,而不是使用 `i` 和 `}`。其次,在 `getString` 方法内部的 `for` 循环中,变量 `i` 的初始值应该是 0 而不是 e。最后,在 `main` 方法中,应该使用 `println` 方法而不是 `print1n` 方法输出结果。
修正后的代码如下:
```
class MyString {
public String getString(String s) {
StringBuffer str = new StringBuffer();
for (int i = 0; i < s.length(); i++) {
if (i % 2 == 0) {
char c = s.charAt(i);
str.append(c);
}
}
return new String(str);
}
}
public class E {
public static void main(String[] args) {
String s = "1234567890";
MyString ms = new MyString();
System.out.println(ms.getString(s));
}
}
```
运行结果为:
```
13579
```