简单程序有几个不明白的地方求答案。。。。

zisidemao 2004-11-21 12:41:10
public class BJ
{
public static void main(String args[]) throws Exception
{
if(args[0].length()<10)
System.out.print("Enter a string:include 10 chars");
else
{
String str=new String("bacdbcabca");
int n=0;
System.out.print("The Standard answer:");
for(int x=0;x<str.length();x++)
System.out.print(" "+str.charAt(x));
System.out.println();
System.out.print("The Student answer:");
for(int x=0;x<str.length();x++)
{
if(args[0].charAt(x)==str.charAt(x))
{
n++;
System.out.print(" "+args[0].charAt(x));
}
else
System.out.print(" "+"@");
}
System.out.println( );
System.out.println("The correct answers:"+n);
}
}
}
问题1:if(args[0].length()<10)这句话里是判断输入的字符是否小于10个的意思那为什么args[]里要有0?str.length是这个数组元素的总长度那args[0].length是什么意思?
问题2:int n=0里的n代表什么意思?是看有多少个字符相当么?然后相等的数++??
问题3:str.charAt(x)这个是什么意思?尤其是charAt这个是实现什么功能?


...全文
110 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fkys 2004-11-21
  • 打赏
  • 举报
回复
args[0].length()这里的.length()是方法,String类重写的。
而数组的length是属性。

才疏学浅。等待高手解答。
Popo_CN 2004-11-21
  • 打赏
  • 举报
回复
关注中
羊城咩咩咩 2004-11-21
  • 打赏
  • 举报
回复
beakham(我不是贝克汉姆)

索引从0到长度-1??问题1和3还是不太明白,大哥帮忙说细点好么??
___________________________________________________________________

呵呵,指正一下,String.charAt(int index)返回的是char.


问题1例答:首先,你的args[]是是用来保存运行参数的。譬如,你写了个Hello.java,当你通过命令运行java Hello Mike Bile Joe Jane
我们来看一下args[0].length()和args.length的区别。

args[0].length() : args[]是一个字符串数组,在这个例子里args[0],args[1],args[2],args[3]里面保存的内容分别是Mike,Bile,Joe,Jane.所以args[0].length()实际上就是"Mike".length()的意思,因为“Mike"这个字符串长度为4,所以args[0].length()将返回4。

args[].length : 呵呵,这个你应该知道是什么意思了吧?length是数组的一个属性,表示数组的长度。不过你得注意,length在这里不是表示你实际内容的长度,而是这个数组的“最大容量”。

问题2例答 : 举个简单的例子。
String s="Hello";
char c;
c=s.charAt(0);
那么c的内容是什么呢?这个就留个你思考了,其实通过自己写个小程序,这些都很容易解决,希望你明白受“鱼”不如学“渔”:)
snow_oracle 2004-11-21
  • 打赏
  • 举报
回复
关注
catblue 2004-11-21
  • 打赏
  • 举报
回复
问题3:str.charAt(x)这个是什么意思?表示字符串下标为x的字符
xq_zz 2004-11-21
  • 打赏
  • 举报
回复
问题1:if(args[0].length()<10)这句话里是判断输入的字符是否小于10个的意思那为什么args[]里要有0?str.length是这个数组元素的总长度那args[0].length是什么意思?

答:arg[]是一个字符数组,你要取其中一个值担任要给下标了。下标从零开始。str.length是一个属性,算出数组长度,而args[0].length(),只有方法,没有属性的,你写错了。是返回单个字符的长度。

问题3:str.charAt(x)这个是什么意思?尤其是charAt这个是实现什么功能?
答:charAt是从一个字符串中截取其中一个字符,里面的参数是一个整形的索引。
zisidemao 2004-11-21
  • 打赏
  • 举报
回复
索引从0到长度-1??问题1和3还是不太明白,大哥帮忙说细点好么??
beakham 2004-11-21
  • 打赏
  • 举报
回复
charAt(x)返回指定索引上的字符。索引从0到 长度-1。
classjava 2004-11-21
  • 打赏
  • 举报
回复
问题1:if(args[0].length()<10)这句话里是判断输入的字符是否小于10个的意思那为什么args[]里要有0?str.length是这个数组元素的总长度那args[0].length是什么意思?
————————————————————————————————————————————
是String类的函数,用来算你字符串长度,就是那个命令行的第一个字符串,可以说入很多个字符串,用空格隔开
——————————————————————————————————————————
问题2:int n=0里的n代表什么意思?是看有多少个字符相当么?然后相等的数++??
——————————————————————————————————————————
是个标记,用来计算字符的多少个,(呵呵,以后你会经常用到来计算个数什么的)
——————————————————————————————————————
问题3:str.charAt(x)这个是什么意思?尤其是charAt这个是实现什么功能?
————————————————————————————————————————
表示字符串下标为x的字符

62,612

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧