为了账号安全,请及时绑定邮箱和手机立即绑定

关于getBytes()方法:

关于getBytes()方法:

public class HelloWorld {
	public static void main(String[] args) {
		// 定义一个字符串
		String s = "aljlkdsflkjsadjfklhasdkjlflkajdflwoiudsafhaasdasd";

		// 出现次数
		int num = 0;
		byte b[] = s.getBytes();

		// 循环遍历每个字符,判断是否是字符 a ,如果是,累加次数
		for (int i = 0; i < s.length(); i++) {
			// 获取每个字符,判断是否是字符a
			if (b[i] == (int) 'a') {
				// 累加统计次数
				num++;
			}
		}
		System.out.println("字符a出现的次数:" + num);
	}
}

最后几行的if (b[i] == 'a')和if (b[i] == (int)'a')为什么都可以执行成功呢?所以这里的a究竟是什么类型,byte类型也是int的一种么?

正在回答

2 回答

转成int也是一个字符吧    在阿斯克码表里都是同一个值 这里应该是强转成int后又自动转成byte的?

0 回复 有任何疑惑可以回复我~
#1

pkcorn 提问者

非常感谢!以自己现在的水平看来是ASCII表
2018-05-22 回复 有任何疑惑可以回复我~
#2

如果我是DJ我是DJ我是DJ我是DJ 回复 pkcorn 提问者

有帮到你就好啦 我也是估摸着来的
2018-05-22 回复 有任何疑惑可以回复我~
#3

pkcorn 提问者 回复 如果我是DJ我是DJ我是DJ我是DJ

哈哈,过去太久了,自己后来问老师类似的问题问懂了,不过就当是留给后来人了。
2018-05-22 回复 有任何疑惑可以回复我~
#4

如果我是DJ我是DJ我是DJ我是DJ 回复 pkcorn 提问者

仔细一看 都是半年前的问题啦 哈哈
2018-05-22 回复 有任何疑惑可以回复我~
查看1条回复

两种情况 是 基本数据类型的自动转化吧?

0 回复 有任何疑惑可以回复我~
#1

pkcorn 提问者

强制转换
2017-12-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第三季
  • 参与学习       409790    人
  • 解答问题       4340    个

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

进入课程

关于getBytes()方法:

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信