java数组与字符串
更新时间:2024-06-13 18:48:01 阅读量: 综合文库 文档下载
Ex3:数组和字符串
1、假设s1,s2,s3,s4是四个字符串,其值如下:(25分) String s1=“Welcome to Java” String s2=s1
String s3=new String(“welcome to java”); String s4=“welcome to java” 下面表达式的结果是什么?
(1) s1= =s2; 结果:true (2) s2= =s2; 结果:true (3) s1.equal(s2); 结果:true (4) s2.equal(s3); 结果:false (5) s1.compareTo(s2); 结果:0 (6) s2.compareTo(s3); 结果:-32 (7) s1= =s4; 结果:false (8) s1.charAt(0); 结果:W (9) s1.indexof(?j?); 结果:11 (10) s1.indexof(“to”); 结果:8 (11) s1.lastindexof(?a?); 结果:14 (12) s1.lastindexof(“o”,15); 结果:9 (13) s1.length() 结果:15
(14) s1.substring(5) 结果:me to Java (15) s1.substring(5,11) 结果:me to J (16) s1.startwith(“wel”) 结果:false (17) s1.ednwith(“Java”) 结果:true
(18) s1.toLowerCase() 结果:welcome to java
(19) s1.toUpperCase() 结果:WELCOME TO JAVA (20) “Welcom”.trim() 结果:Welcome
(21) s1.replace(?o?, ?T?) 结果:WelcTme tT Java (22) s1.replaceAll(?o?, ?T?) 结果:WelcTme tT Java (23) s1.replaceFirst(?o?, ?T?) 结果:WelcTme to Java
(24) s1.toCharArray() 结果:char []s1={?W?,?e?,?l?,?c?,?o?,?m?,?e?,? ?,?t?,?o?,
? ?,?J?,?a;,?v?,?a?}
为了创建一个字符串“Welcome to Java”,可能会用到如下所示的语句: String s=”Welcome to Java”; 或者
String s=new String(“Welcome to Java”); 哪个语句更好?为什么?
解:第一个语句。因为字符串使用非常频繁第一种比较简化,而第二种比较繁琐。 2、假设s1和s2是两个字符串,下面哪些语句或表达式是错误的?(9分) (1)String s=new String(“new string”); (2)String s3=s1+s2; (3)String s3=s1-s2; (4)s1==s2; (5)s1>=s2;
(6)s1.compareTo(s2); (7)int i=s1.length(); (8)char c=s1(0);
(9)char c=s1.charAt(s1.length()); 解:(3)(4)(5)(9)是错误的
3、假设s1是“Welcome”而s2是“welcome”为下面的陈述编写代码:(18分) (1) 检查s1和s2是否相等,然后将结果赋值给一个布尔变量isEqual。 isEqual=s1.equalsTo(s2) (2) 检查在忽略大小写的情况下s1和s2是否相等,然后将结果赋值给一个布尔变量
isEqual。
isEqual=s1.equalsTo(s2) (3) 比较s1和s2,然后将结果赋值给一个整型值x。 x=s1.compareTo(s2) (4) 在忽略大小写的情况下比较s1和s2,然后将结果赋值给一个整型值x。 x=s1.compareToIgnoreCase(s2) (5) 检查s1是否有前缀“AAA”,然后将结果赋值给一个布尔变量b。 b=s1.startwith(“AAAl”) (6) 检查s1是否有后缀“AAA”,然后将结果赋值给一个布尔变量b。 b=s1.ednwith(“AAA”) (7) 将s1的长度赋值给一个字符型变量x。 x=String.valueOf(s1.length()) (8) 将s1的第一个字符赋值给一个字符型变量x。 x=s1.charAt(0) (9) 创建一个新字符串s3,它是s1和s2的组合。 new String s3=s1+s2
(10) 创建一个s1的子串,下标从1开始。 String s=s1.substring(1)
(11) 创建一个s1的子串,下标从1到4。 String s=s1.substring(1,4)
(12)创建一个新字符串s3,它将s1转换为小写。 new String s3=s1.toLowerCase() (13)创建一个新字符串s3,它将s1转换为大写。 new String s3=s1.toUpperCase()
(14)创建一个新字符串s3,它将s1的两端空格去掉。 new String s3=s1..trim()
(15)用E替换s1中所有出现字符e的地方,然后将新字符串赋值给s3。 s3=s1.replace(?e?, ?E?)
(16) 将“Welcome to Java and HTML”按空格分隔为一个数组tokens。 String []tokens=“Welcome to Java and HTML”.split() (17)将s1中字符e第一次出现的下标赋值给一个int型变量x。 x=s1.indexof(?e?);
(18)将s1中字符串abc最后一次出现的下标赋值给一个int型变量x。 x=s1.lastIndexof(“abc”);
4、假设给出如下所示的s1和s2:(12分)
StringBuilder s1=new StringBuilder(“Java”); StringBuilder s2=new StringBuilder(“HTML”);
显示执行每条语句之后s1的结果。假定这些表达式都是相互独立的。
(1) s1.append(“is fun”); 结果:Java is fun (2) s1.append(s2); 结果:Java HTML (3) s1.insert(2,“is fun”); 结果:Javis funa (4) s1.insert(1,s2); 结果:JaHTMLva (5) s1.charAt(2); 结果:v (6) s1.length(); 结果:4 (7) s1.deleteCharAt(3); 结果:Jav (8) s1.delete(1,3); 结果:Ja (9) s1.reverse(); 结果:avaJ
(10) s1.replace(1,3,“Computer”); 结果:JComputer (11) s1.subString(1.3); 结果:av (12) s1.subString(2); 结果:va
5、指出下列语句是对还是错?(4分)
(1) 数组中每个元素都有相同的类型。 √ (2) 一旦数组被声明,大小就不能改变。 × (3) 一旦数组被创建,大小就不能改变。 √ (4) 数组中的元素必须是基本数据类型 × 6、下列哪些语句是合法的数组声明?(9分)
(1) int i=new int(30);
(2) double d[]=new double[30]; (3) char[] r=new char(1..30); (4) int i[]=(3,4,3,2);
(5) float f[]={2.3,4.5,6.6}; (6) char[] c=new char();
(7) int[][] array=new in[5][6]; (8) int[] x=new int[]; (9) int[][] y=new int[3][];
解:(2)(7)(9)(5)为合法数组声明
7、声明数组时给数组分配内存吗?什么时候为数组分配内存?下面代码输出的结果是什 么?(9分) int x=30;
int[] numbers=new int[x]; x=60;
System.out.println(“x is ”+x);
System.out.println(“The size of numbers is ” + numbers.length);
解:声明数组时不一定给数组分配内存。在栈中声明了一个数组并开辟了一块空间,此时数组分配了内存。 输出结果是:x is 60
The size of numbers is 30 8、编写语句完成:(14分)
(1)创建一个含10个double值的数组; (2)将5.5赋值给数组中最后一个元素; (3)显示数组前两个元素的和;
(4)编写循环计算数组中所有元素的和; (5)编写循环找出数组的最小值;
(6)随机产生一个下标,然后显示该下标所对应的数组元素;
(7)使用数组初始化语法创建另一个初始值为3.5、5.5、4、25和5.6的数组; 解:
double []arry=new double [10]; arry[9]=5.5;
System.out.println(arry[0]+arry[1]); int sum=0,min=arry[0]; for(int i=0;i<10;i++) sum+=arry[i]; for(int j=1;j<10;j++) if(min
int x=(int)(Math.Random())*arry.length;
System.out.println(“arry[x]=”+arry[x]); double []myArry={3.5,5.5,4,25,5.6};
正在阅读:
java数组与字符串06-13
吉热改2号关于省直在长机关事业单位职工采暖费补贴有关问06-02
【食品欺诈预防管理程序】ISO22000 2018年食品安全管理体系审核06-12
高考化学试题精炼01(74)01-02
人教版pep小学四年级英语第一单元教案05-27
基于Proteus的多功能单片机仿真开发板(内含多个程序模块)06-14
y酸 碱 盐 化学性质公开课05-22
薪酬管理制度201406-05
现场管理系统与三大要素05-31
数学第六册期末质量检测题(一)200210-20
- 高一物理牛顿运动定律全套学习学案
- 水处理一级反渗透加还原剂亚硫酸氢钠后为什么ORP会升高
- 毕业设计(论文)-正文董家口 - 图文
- 荣盛酒店经营管理公司录用通知及入职承诺书II
- 第二讲 大学英语四级快速阅读技巧
- 质量管理体系文件(2015年委托第三方医药物流配送企业专用版本)
- 214071收款办法
- 苏轼对《文选》选文的评价
- 《诊断学基础B》1-8作业
- 广东省东莞市高一数学下学期期末教学质量检查试题
- 海南电网公司VIS推广应用管理办法
- 红星照耀中国习题
- 苏教版小学语文六年级上册期末复习资料之生字词整理
- 局域网组建与应用—王向东
- 税务稽查内部管理文书样式
- 环保社会实践调查表
- 九年级思品第一单元复习
- 2016年全国注册咨询工程师继续教育公路路线设计规范试卷
- 毕业设计-青岛港董家口港区防波堤设计
- 撞背锻炼方法与益处
- 数组
- 字符串
- java
- 进程管理习题及答案
- 枣庄市城市总体规划专题报告
- 2019年4月全国自考《工程数学—线性代数》考前试题和答案02198
- 华师附中2013届高三5月综合测试(理数) - 图文
- 前三2013年英语中考模拟题
- 物探方法在乌拉特金泉工业园区地下水水源地范围选定中的运用 -
- 四年级品德与社会上册同步练习山东美术版
- 金刚石,石墨和C60 习题(含答案)
- 内乡县2009 - 2010学年第二学期小学六年级期中调研测试语文试题
- 2014年一级建造师建设工程经济梅世强个人必考点总结
- 04入党积极分子考察登记表(范本)
- 矿井矸石山事故专项应急预案
- 近现代史纲要第三章练习题
- 股指期货交易指南
- 北京现代城销售人员集体跳槽事件
- 文献检索
- 第三章 思考题-习题解答
- 曲靖沾益海峰湿地项目建设实施规划
- 公共基础知识(B)模拟试卷一
- 民俗学