java关于length的问题,高手来解答,谢谢
publicclassTestString{publicstaticvoidmain(String[]args){Strings="AaaaBbbbcc@!!@*asdJ...
public class TestString {
public static void main(String[]args) {
String s = "AaaaBbbbcc@!!@*asdJKinoml - -haHA";
int lCount = 0, uCount = 0, oCount = 0;
for(int i=0; i<s.length(); i++) {
char c = s.charAt(i);
if(c >= 'a' && c <= 'z') {
lCount++;
}
if(c >= 'A' && c <= 'Z') {
uCount++;
}
else {
oCount++;
}
}
System.out.println(lCount + " " + uCount + " " + oCount);
}
}
在本程序的第五行中,有for(int i=0; i<s.length(); i++) {
我就想问下,length不是属性吗?既然是属性,为什么后面还要有括号?
于是我把括号去掉后,程序提醒说我错了TestString.java:5: 找不到符号
符号: 变量 length
位置: 类 java.lang.String
for(int i=0; i<s.length; i++) {
^
1 错误
但我在其他的程序里面(比如数组),当用到length的时候,就不用写length后面的括号。比如:
public class TestArray2wei {
public static void main(String[] args) {
String[][] s;
s = new String[3][];
s[0] = new String[2];
s[1] = new String[3];
s[2] = new String[2];
for(int i=0; i<s.length; i++) {
for(int j=0; j<s[i].length; j++) {
s[i][j] = new String("我的位置是:"+ i +","+ j);
}
}
for(int i=0; i<s.length; i++) {
for(int j=0; j<s[i].length; j++) {
System.out.println(s[i][j]+ " ");
}
System.out.println();
}
}
}
你们看,这个程序里的第八行,length后面就没有括号,我想问下,这是怎么回事?
由于我家里条件困难,无法去培训班,所以现在在家自学java,有很多的问题要问,所以悬赏分不是很高,希望大家能帮助我,再次感谢你们了! 展开
public static void main(String[]args) {
String s = "AaaaBbbbcc@!!@*asdJKinoml - -haHA";
int lCount = 0, uCount = 0, oCount = 0;
for(int i=0; i<s.length(); i++) {
char c = s.charAt(i);
if(c >= 'a' && c <= 'z') {
lCount++;
}
if(c >= 'A' && c <= 'Z') {
uCount++;
}
else {
oCount++;
}
}
System.out.println(lCount + " " + uCount + " " + oCount);
}
}
在本程序的第五行中,有for(int i=0; i<s.length(); i++) {
我就想问下,length不是属性吗?既然是属性,为什么后面还要有括号?
于是我把括号去掉后,程序提醒说我错了TestString.java:5: 找不到符号
符号: 变量 length
位置: 类 java.lang.String
for(int i=0; i<s.length; i++) {
^
1 错误
但我在其他的程序里面(比如数组),当用到length的时候,就不用写length后面的括号。比如:
public class TestArray2wei {
public static void main(String[] args) {
String[][] s;
s = new String[3][];
s[0] = new String[2];
s[1] = new String[3];
s[2] = new String[2];
for(int i=0; i<s.length; i++) {
for(int j=0; j<s[i].length; j++) {
s[i][j] = new String("我的位置是:"+ i +","+ j);
}
}
for(int i=0; i<s.length; i++) {
for(int j=0; j<s[i].length; j++) {
System.out.println(s[i][j]+ " ");
}
System.out.println();
}
}
}
你们看,这个程序里的第八行,length后面就没有括号,我想问下,这是怎么回事?
由于我家里条件困难,无法去培训班,所以现在在家自学java,有很多的问题要问,所以悬赏分不是很高,希望大家能帮助我,再次感谢你们了! 展开
6个回答
展开全部
只有数组类型才有length属性。
String是对象只有方法。所以取得字符串长度的就是方法。
String[][] 字符串二维数组。
s[1].length是指数组一维下标为1的二维数组长度。
s[1][0].length(); length()方法在java.lang.String 里。
String是对象只有方法。所以取得字符串长度的就是方法。
String[][] 字符串二维数组。
s[1].length是指数组一维下标为1的二维数组长度。
s[1][0].length(); length()方法在java.lang.String 里。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一个length()是String的一个方法 用来得到这个字符串有多长的
而没有括号的length则是数组的一个属性 用来得到这个数组有多少个元素的
两个是不一样的
而没有括号的length则是数组的一个属性 用来得到这个数组有多少个元素的
两个是不一样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数组的length是属性 如 int[] a = new int[10]; a.length 就是得到数组的长度
字符串的length()是方法,如String str = "sdsdfsdf"; str.length() 就是调用length()方法取得str的长度
这是两个概念
字符串的length()是方法,如String str = "sdsdfsdf"; str.length() 就是调用length()方法取得str的长度
这是两个概念
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数组有length属性
String是length方法
一定要记住,面试有可能会问
String是length方法
一定要记住,面试有可能会问
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
建议你看看j2se API 上面明明说的很清楚 s是String类型 而length()是String类的方法
下面的数组是数组的大小 所以是属性 length
下面的数组是数组的大小 所以是属性 length
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询