public class two
{
public static void main(String[] args)
{
if(args.length!=0){
for(int i=0;i<args.length;i++){
if(args[i]>="a" && args[i]<="z")
System.out.println(j);
else
System.out.println("您所输入的字母是大写!");
}}
}
}
这样写不对,应该如何判断呢?在线等待!谢谢各位的指点!
13 个解决方案
#1
用正则表达式。 args[i].matchs([a-z]) // 大概
#2
楼主思路没错,不过得得把 args[i]转变化char之后再比ascii码
楼上也没错
楼上也没错
#3
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
注意,第二种方法Character.isUpperCase(c)不可以替换成!Character.isLowerCase(c),因为java中非字母字符在这两个判断中都是false
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
注意,第二种方法Character.isUpperCase(c)不可以替换成!Character.isLowerCase(c),因为java中非字母字符在这两个判断中都是false
#4
ask码也可以判断
取这个字符的ask码 在一定范伟内必定就是大写字母
取这个字符的ask码 在一定范伟内必定就是大写字母
#5
大写:Character.isUpperCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
#6
大写:Character.isUpperCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
---------------------------------------------------
学习一下这个方法。。。
小写:Character.isLowerCase(args[i].charAt(j))==true
---------------------------------------------------
学习一下这个方法。。。
#7
fool_leave()
---------------------
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
--------------------------------------
这种效率如何判断啊?
---------------------
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
--------------------------------------
这种效率如何判断啊?
#8
效率的判断是要看源代码的
toLowerCase方法要重新生成一个String,然后一个一个字符的放进去。equals方法又要遍历比较。所以比较耗时
第二种方法直接通过charAt方法遍历数组,判断每个元素的大小写。和第一种方法比起来要少好多步骤。
不过一般都以为自己写的代码越少越好,习惯了也就比较喜欢第一种方法了。对于小字符串来说无所谓,但大字符串就不一样了。
toLowerCase方法要重新生成一个String,然后一个一个字符的放进去。equals方法又要遍历比较。所以比较耗时
第二种方法直接通过charAt方法遍历数组,判断每个元素的大小写。和第一种方法比起来要少好多步骤。
不过一般都以为自己写的代码越少越好,习惯了也就比较喜欢第一种方法了。对于小字符串来说无所谓,但大字符串就不一样了。
#9
准确点的,还是用ascii码的范围比较精确
别的比如是非字母的,那么上面很多算法可能都会有问题
别的比如是非字母的,那么上面很多算法可能都会有问题
#10
to hdhmail2000(禅剑飞雪)
见我3楼的方法2,有一个备注。
见我3楼的方法2,有一个备注。
#11
我还是建议用ascii码或者正则表达式解决简洁点,没必要那么复杂啊
#12
if(args[i]>="a" && args[i]<="z")
System.out.println(j);
else
System.out.println("您所输入的字母是大写!");
这个逻辑思想就不对,难道不是小写的字母就都是大写的了?
System.out.println(j);
else
System.out.println("您所输入的字母是大写!");
这个逻辑思想就不对,难道不是小写的字母就都是大写的了?
#13
static boolean isLower(int ch) {
return ((ch-'a')|('z'-ch)) >= 0;
}
static boolean isUpper(int ch) {
return ((ch-'A')|('Z'-ch)) >= 0;
}
return ((ch-'a')|('z'-ch)) >= 0;
}
static boolean isUpper(int ch) {
return ((ch-'A')|('Z'-ch)) >= 0;
}
#1
用正则表达式。 args[i].matchs([a-z]) // 大概
#2
楼主思路没错,不过得得把 args[i]转变化char之后再比ascii码
楼上也没错
楼上也没错
#3
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
注意,第二种方法Character.isUpperCase(c)不可以替换成!Character.isLowerCase(c),因为java中非字母字符在这两个判断中都是false
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
注意,第二种方法Character.isUpperCase(c)不可以替换成!Character.isLowerCase(c),因为java中非字母字符在这两个判断中都是false
#4
ask码也可以判断
取这个字符的ask码 在一定范伟内必定就是大写字母
取这个字符的ask码 在一定范伟内必定就是大写字母
#5
大写:Character.isUpperCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
#6
大写:Character.isUpperCase(args[i].charAt(j))==true
小写:Character.isLowerCase(args[i].charAt(j))==true
---------------------------------------------------
学习一下这个方法。。。
小写:Character.isLowerCase(args[i].charAt(j))==true
---------------------------------------------------
学习一下这个方法。。。
#7
fool_leave()
---------------------
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
--------------------------------------
这种效率如何判断啊?
---------------------
两种方法
1:
String str="sd Afasfa";
System.out.println(str.toLowerCase().equals(str));
2:
boolean isInSmallCase=true;
for(int i=0;i<str.length();i++){
char c=str.charAt(i);
if( Character.isUpperCase(c)){
isInSmallCase=false;
break;
}
}
System.out.println(isInSmallCase);
第一种方法方便,但效率不如第二种方法
--------------------------------------
这种效率如何判断啊?
#8
效率的判断是要看源代码的
toLowerCase方法要重新生成一个String,然后一个一个字符的放进去。equals方法又要遍历比较。所以比较耗时
第二种方法直接通过charAt方法遍历数组,判断每个元素的大小写。和第一种方法比起来要少好多步骤。
不过一般都以为自己写的代码越少越好,习惯了也就比较喜欢第一种方法了。对于小字符串来说无所谓,但大字符串就不一样了。
toLowerCase方法要重新生成一个String,然后一个一个字符的放进去。equals方法又要遍历比较。所以比较耗时
第二种方法直接通过charAt方法遍历数组,判断每个元素的大小写。和第一种方法比起来要少好多步骤。
不过一般都以为自己写的代码越少越好,习惯了也就比较喜欢第一种方法了。对于小字符串来说无所谓,但大字符串就不一样了。
#9
准确点的,还是用ascii码的范围比较精确
别的比如是非字母的,那么上面很多算法可能都会有问题
别的比如是非字母的,那么上面很多算法可能都会有问题
#10
to hdhmail2000(禅剑飞雪)
见我3楼的方法2,有一个备注。
见我3楼的方法2,有一个备注。
#11
我还是建议用ascii码或者正则表达式解决简洁点,没必要那么复杂啊
#12
if(args[i]>="a" && args[i]<="z")
System.out.println(j);
else
System.out.println("您所输入的字母是大写!");
这个逻辑思想就不对,难道不是小写的字母就都是大写的了?
System.out.println(j);
else
System.out.println("您所输入的字母是大写!");
这个逻辑思想就不对,难道不是小写的字母就都是大写的了?
#13
static boolean isLower(int ch) {
return ((ch-'a')|('z'-ch)) >= 0;
}
static boolean isUpper(int ch) {
return ((ch-'A')|('Z'-ch)) >= 0;
}
return ((ch-'a')|('z'-ch)) >= 0;
}
static boolean isUpper(int ch) {
return ((ch-'A')|('Z'-ch)) >= 0;
}