黑马程序员技术交流社区
标题:
关于字符串中如何判断是大小写问题?
[打印本页]
作者:
张玉建
时间:
2013-8-9 14:05
标题:
关于字符串中如何判断是大小写问题?
字符串中!有方法toUpperCase(),和toLowerCase(),
但如何去判断字符串是大写还是小写!,String类没有判断字符串大小写的方法。
如何去实现该功能!求大神解释!
作者:
薛淑凯
时间:
2013-8-9 14:57
分别对每个字符对应的asc码来判断吧
看了看toUpperCase(),和toLowerCase()的源代码
toUpperCase()方法中只有一行代码
toLowerCase()却有好几十行,看不懂啊,不懂,大致用的就是asc码判断的
作者:
崔一恒
时间:
2013-8-9 16:24
可以用这个方法
public static boolean isAcronym(String str){
for(int i = 0; i < str.length(); i++){
char c = str.charAt(i);
if (!Character.isLowerCase(c)){
return false;
}
}
return true;
}
复制代码
在判断的时候方法是多样的,可以判断对比是否是大写或小写ASCII码区间内,也可以用正则表达式等,这个倒不要紧
作者:
panningwjr
时间:
2013-8-9 17:32
下面是我以前写的一端代码:
就是将String转换成char数组,循环遍历,然后通过是否在'a'和'z'之间来判断小写
'A'和'Z'来判断是否是大写
char[] c = str.toCharArray();
// 循环遍历字符数组
for (int i = 0; i < c.length; i++) {
//判断是否是小写字母
if ('a' <= c
&& c
<= 'z') {
// 将小写转换成大写
c
= (char) (c
+ ('A' - 'a'));
} else if ('A' <= c
&& c
<= 'Z') {
// 将大写转换成小写
c
+= ('a' - 'A');
}
}
作者:
杨增坤
时间:
2013-8-9 18:17
你的说法不是很正确,字符传要是比较大小,是和字符串比较才能比较大小,但是没有字符串是大小写的,
但是你要是说把字符串分割成字符数组,然后比较字符数组中的元素才有大小写,字符才有大小写!
希望你能理解!
作者:
黑马王晓明
时间:
2013-8-9 22:08
//a-z 97-122 A-B 65-90
class Demo{
public static void main(String[] args) {
String s1="abc";
String s2="ABC";
getCount(s1);
getCount(s2);
}
private static void getCount(String s){
//转字符数组
char[] ch = s.toCharArray();
//遍历数组
for (int i = 0; i < ch.length; i++) {
if(ch[i]>=97 && ch[i]<=122){
System.out.println(ch[i]+"是小写字母");
}else{
System.out.println(ch[i]+"是大写字母");
}
}
}
}
输出结果:a是小写字母--b是小写字母--c是小写字母--A是大写字母--B是大写字母--C是大写字母--
记住a-z相对应的97-122 A-B相对应是65-90 然后进行判断就可以啦 希望对你有用
作者:
白堇翎
时间:
2013-8-9 22:29
本帖最后由 白堇翎 于 2013-8-9 22:33 编辑
String str = "需要判断的字符串"
Stirng regex = "^[a-z]+$"//判断是否全部是小写字母
System.out.println(str.matches(regex));//打印结果
用正则表达式会比较简单
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2